我有一个描述细菌性繁殖的文件:
Yersinia aldovae 1
Yersinia frederiksenii 1
Yersinia pestis 2
Zymomonas mobilis 1
我想制作一个新专栏来保留细菌名称的第一个字,例如:
Yersinia Yersinia aldovae 1
Yersinia Yersinia frederiksenii 1
Yersinia Yersinia pestis 2
Zymomonas Zymomonas mobilis 1
有人可以告诉我如何使用sed或awk来完成这项工作吗?谢谢!
答案 0 :(得分:4)
使用awk:
awk '{ print $1 "\t" $0 }' file
或者也许:
awk -v OFS="\t" '{ print $1, $0 }' file
使用sed:
sed 's/\([^ ]*\) .*/\1\t&/' file
或:
sed 's/[^ ]*/&\t&/' file
答案 1 :(得分:2)
您可以使用awk:
awk '{print $1 "\t" $0}' source_file > dest_file
答案 2 :(得分:2)
使用 awk :
awk '$0=$1"\t"$0' File
将"line"
更改为"first column", tab & "line"
。
使用 sed :
sed -r 's/(\S+).*/\1\t&/' File
(\S+)
=> 1个或多个非空格字符,这将是第一个单词。将整行更改为"first word", tab and the line itself (&)
答案 3 :(得分:1)
打印第一列和整行。
awk '{printf("%s\t%s\n", $1, $0)}' filename > new_filename