我想在文件中选择一些列并在其上运行一些命令.
所以我的剧本就是这个
awk '{print $1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$19}' test.txt > outpot.txt
但这打印到另一个文件,我试图这样做
awk '{print $1,$16}' test.txt | next commands
(这个命令工作正常!我犯了一个错误,我不知道如何删除这个问题)
有没有可能让这个命令更短,而不是写所有列只写$1-7&& $9-15&& 19美元(但这并不重要,我只是想知道是否可能).最主要的是能够选择那些列
最佳答案
根据glennjackman’s建议更新:
awk '{for (i=1;i<=NF;i++) if ((1<=i && i<=7) || (9<=i && i<=15) || i==19) printf("%s ",$i); print ""}' file
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。