使用AWK联接两个文件,从控制台联接一个文件

时间:2018-11-11 11:44:04

标签: bash awk

我可以像这样使用AWK连接两个文件:

awk 'NR=FNR{a[$2]=$2}{print $0, a[$1]}' FS="sep1" file1.txt FS="sep2" file2.txt

我还可以对正在处理的文件使用awk:

cut -d ' ' -f 2 file1.txt | sort | uniq -c | sort -rn | whatevercommands ... | awk '{print $0}'

现在如何使用awk加入正在使用示例1处理的文件,然后在其上使用awk?或者更确切地说,如何向awk馈送一个正在处理的文件而另一个新文件。例如:

cut -d ' ' -f 2 file1.txt | sort | uniq -c | sort -rn | manyMoreCommands ...| awk 'NR=FNR{a[$2]=$2}{print $0, a[$1]}}' FS="sep2" file2.txt

示例已简化。在awk命令中,我正在执行循环和更复杂的事情,而不是简单的打印。

我真正需要的是能够使用连接两个文件(意味着AWK依次遍历第一个文件然后遍历第二个文件)但从命令行馈入一个文件时使用的相同机制。 / p>

0 个答案:

没有答案