行数を数え、その数をシェルスクリプトの変数に入れたいです。例えば。
wc -l filename.dat
221 filename.dat
後で使用できる変数に「221」をgrepしたいと思います。これを1つの文で実行できますか?出力をwc -l
別のファイルにコピーしてからgrepにコピーしたくありません。
答え1
ファイル名をSTDINに渡すことで、行数だけを取得wc
できます。
wc -l <filename.dat
変数として保存するには:
var="$(wc -l <filename.dat)"
例:
$ wc -l foo.txt
12 foo.txt
$ wc -l <foo.txt
12
$ var="$(wc -l <foo.txt)"
$ echo "$var"
12
次のように注意してくださいステファン・チャゼラスは次のように指摘しています。、いくつかのwc
バリエーションでは、目的のソートを得るために行番号の前後にスペースを追加することができます。