簡體   English   中英

bash:如何將“ wc -l”的輸出實現為另一個腳本的參數

[英]bash: how to implement the output of 'wc -l' as an argument to another script

我有一個腳本:'analysis.pl',其中需要一個單獨文件中的行數作為輸入參數:

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

如果我可以將'wc -l split_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}'`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM