wc -l file.txt
行数とファイル名を出力します。
番号自体だけが必要です(ファイル名ではありません)。
私がすることができます
wc -l file.txt | awk '{print $1}'
しかし、もっと良い方法があるのではないでしょうか?
この方法を試してください:
wc -l < file.txt
cat file.txt | wc -l
manページによると(BSDバージョンの場合、チェックするGNUバージョンはありません):
ファイルが指定されていない場合、標準入力が使用され、ファイル名は表示されません。プロンプトは、ほとんどの環境で EOF または [^D] を受け取るまで入力を受け入れます。
先頭のスペースなしでこれを行うには、次のようにします。
wc -l < file.txt | bc
明らかに、これには多くの解決策があります。ここに別のものがあります:
wc -l somefile | tr -d "[:alpha:][:blank:][:punct:]"
これは行数のみを出力しますが、末尾の改行文字 ( \n
) が存在します。それも必要ない場合は、に置き換え[:blank:]
て[:space:]
ください。