Regex 删除名称列表中第一个字符后的所有内容
我有一个名字列表,我想把名字和姓氏两个列表结合起来。我想删除名字中第二个字符后面的所有内容。例如: 名字Regex 删除名称列表中第一个字符后的所有内容,regex,perl,sed,awk,cut,Regex,Perl,Sed,Awk,Cut,我有一个名字列表,我想把名字和姓氏两个列表结合起来。我想删除名字中第二个字符后面的所有内容。例如: 名字 Adam Adam Amanda M Amber Ami Amy Amy Amy Amy 输出 A A A A A A A A A 你在找这个吗 sed 's/^\(.\).*/\1/' file 或者简单地说: grep -o '^.' file 你在找这个吗 sed 's/^\(.\).*/\1/' file 或者简单地说: grep -o '^.' file 使用cut:
Adam
Adam
Amanda M
Amber
Ami
Amy
Amy
Amy
Amy
输出
A
A
A
A
A
A
A
A
A
你在找这个吗
sed 's/^\(.\).*/\1/' file
或者简单地说:
grep -o '^.' file
你在找这个吗
sed 's/^\(.\).*/\1/' file
或者简单地说:
grep -o '^.' file
使用
cut
:
$ echo "Adam
Adam
Amanda M
Amber
Ami
Amy
Amy
Amy
Amy" | cut -c 1
A
A
A
A
A
A
A
A
A
使用
cut
:
$ echo "Adam
Adam
Amanda M
Amber
Ami
Amy
Amy
Amy
Amy" | cut -c 1
A
A
A
A
A
A
A
A
A
使用awk:
awk -F '\0' '{print $1}' file
或纯BASH:
while read l; do
echo ${l:0:1}
done < file
读l时;做
echo${l:0:1}
完成<文件
使用awk:
awk -F '\0' '{print $1}' file
或纯BASH:
while read l; do
echo ${l:0:1}
done < file
读l时;做
echo${l:0:1}
完成<文件
这可能适合您(GNU-sed):
这可能适用于您(GNU-sed):