awk gsub后打印奇数列
假设有一个文本文件test.txt,其中包含以下内容:
apple banana cherry
date eggplant fig
grape honeydew jackfruit
可以使用以下命令将每行中的偶数单词替换为空格,并打印出所有奇数单词:
awk '{for(i=1;i<=NF;i+=2)gsub(/\w+/,"",$i);print $1,$3,$5}' test.txt
输出结果为:
apple cherry
date fig
grape jackfruit
解释:
for(i=1;i<=NF;i+=2)遍历每行的奇数列,其中NF表示当前行的总列数。gsub(/\w+/,"",$i)将当前列中的所有单词替换为空格。print $1,$3,$5打印每行的第1、3、5列,即奇数列。
原文地址: https://www.cveoy.top/t/topic/5J1 著作权归作者所有。请勿转载和采集!