我有5个文件
a.txt b.txt c.txt d.txt e.txt
使用的模式
awk 'NR==21 {print $1}' a.txt; awk 'NR==21 {print $1}' b.txt; awk 'NR==21 {print $1}' c.txt; awk 'NR==21 {print $1}' d.txt; awk 'NR==21 {print $1}' e.txt;
产量
a b c d e
但我需要它
abcde
有人可以帮帮我吗?
你不需要多个awk。 你实际上可以把它们组合成单个awk:
awk FNR==21 {if (NR>FNR) printf OFS; printf $1}' {a,b,c,d,e}.txt abcde
FNR==21
将在每个输入文件中为#21行运行此块 NR>FNR
将打印第二个文件的空间 尝试这个
awk 'NR==21 {print $1}' a.txt; awk 'NR==21 {print $1}' b.txt; awk 'NR==21 {print $1}' c.txt; awk 'NR==21 {print $1}' d.txt; awk 'NR==21 {print $1}' e.txt; |tr '\n' ' '
只需添加一个tr
命令
tr '\n' ' '