bash:如何将'wC语言 l'的输出实现为另一个脚本的参数



我有一个脚本:"analysis.pl",其中需要单独文件中的行数作为输入参数:

perl ./analysis.pl max=[input number of lines in separate file]

如果我能给出 'wc -l separate_file' 的输出作为 perl 脚本的输入,那将非常有用。

max=`wc -l NRL.txt`
echo $max
perl ./analysis.pl max=$max

问题是wc -l给出了行数和文件名,该文件名返回错误,因为参数只能接受一个输入。

perl ./analysis.pl max=150000 separate_file ####error

那么如何让 wc -l 只返回行数而不是文件名呢?

将文件作为标准输入传递时 WC 不回显文件名

wc -l < NRL.txt

有很多方法可以具体解决这个问题,但一种方法是通过管道将 wc 的输出传输到 awk 并从 wc 的输出中提取数字:

max=`wc -l NRL.txt | awk '{print $1}'`

最新更新