![将多个文件中的列合并为一个](https://linux22.com/image/150883/%E5%B0%86%E5%A4%9A%E4%B8%AA%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E5%88%97%E5%90%88%E5%B9%B6%E4%B8%BA%E4%B8%80%E4%B8%AA.png)
我有几个包含两列的文件:文件 1:
1 100
2 103
文件2
1 200
2 203
大约有 600 个此类文件,分为两栏。
现在,我想以正确的顺序组合第一行的每个文件中的第二列,以获得单个数据文件,例如:
100
200
.
.
. (600 lines)
我怎么做?
答案1
awk 'FNR==1 {print $2}' file*
这将打印文件名以 开头的每个文件的$2
第一行 () 的第二列 ( ) 。FNR==1
file
另一种方法是打印第一行,然后立即跳到下一个文件(nextfile
是mawk
GNUawk
特定的关键字):
awk '{print $2; nextfile}' file*
答案2
上面已经给出了最佳答案。尝试使用以下命令
for i in file1 file2; do awk 'NR==1{print $2}' $i; done
100
200