我有一个标签分隔的字符串。
我想将1列复制到一个文件,将其余列复制到其他文件中,如果我使用2个不同的命令,那么该字符串可以在其间进行修改。
我试过了:
tab_seperated_string | awk -F"\t" '{ print $2"\t"$3"\t"$4"\t"$5} {print $1}'
2,3,4,5应该转到一个文件,1应该转到另一个文件。
答案 0 :(得分:0)
你可以这样做:
tab_seperated_string | awk -F"\t" '{print $2,$3,$4,$5 > "file2"; print $1 > "file1"}' OFS="\t"
然后它会将数据保存到两个不同的文件中。
通过将OFS
设置为\t
,您不需要print语句中的所有\t
。
如果你有许多字段转到一个文件而第一个字段转到另一个文件,这是另一种方法:
awk -F"\t" '{print $1 > "file1"; sub(/[^\t]+\t/,""); print $0 > "file2"}' OFS="\t"
sub(/[^\t]+\t/,"")
删除第一个字段和第一个标签。