我有一个包含数百列的大文件,我想从中仅删除第三和第四列,并将其余部分输出到另一个文件。我的最初想法是创建一个像这样的 awk 脚本:
然后我尝试了:
awk '{print $1, $2, for (i=$5; i <= NF; i++) print $i }' file > outfile
。但是,这段代码不起作用。然后我尝试了:
awk '{for(i = 1; i<=NF; i++)
if(i == 3 || i == 4) continue
else
print($i)}' file > outfile
但这只是把所有内容都打印出来放在一个字段中。虽然可以将其拆分为两个脚本并使用Unix的paste
组合它们,但这似乎应该能够在一行命令中完成。