将 100 多个文件中两列的两个数据合并到一个单独的文件中

将 100 多个文件中两列的两个数据合并到一个单独的文件中

我有大号。包含以下列的 *.txt(从 n1.txt 到 n300.txt)文件。

    #1               #2             #3              #4           #5                   #6
0.000000e+00    2.495000e+02    0.000000e+00    5.010000e+02    nan             2.955461e-01           

我需要从第 4 列和第 6 列中提取数据并将其粘贴到一个单独的文件中,以便第 4 列按升序排列。

我需要对所有文件重复一遍。

答案1

从所有文件中提取第 4 列和第 6 列并将其写入 tmp 文件:

for file in *.txt;do
  awk '{print $4,$6}' "${file}" >> /tmp/a
done

现在对该文件的内容进行排序:

sort -g /tmp/a > /tmp/b

根据您希望的排序方式,更改命令上的选项sort

相关内容