head命令的输出在变量中保留bash脚本中的换行符

时间:2017-04-13 16:02:58

标签: linux bash shell awk grep

我们说,我有一个文件 abc.txt ,文件中有一个 some_pattern 模式,我想要打印该行的第一列

cat abc.txt | grep some_pattern | awk '{print $1}'

我事先知道该模式出现在文件的前10行中。所以,想要优化使用:

head -10 abc.txt | grep some_pattern | awk '{print $1}'

但是如果现在我必须搜索另一个模式 some_pattern2 ,这又是文件的前10行?我希望我可以将 head 命令的输出存储在某些变量中:

trimmed_file=`head -10 abc.txt`
echo $trimmed_file | grep some_pattern | awk '{print $1}'

但不幸的是,$ trimmed_file有前10行文件,没有换行符,因为只有一行,它总是打印文件的第一个单词。

0 个答案:

没有答案