別の行に行、単語、文字数を表示する方法は?

別の行に行、単語、文字数を表示する方法は?

ファイルの個々の行に行数、単語、文字数を表示したいですか?
その用途以外にはよくわかりませんwc filename

答え1

あなたはそれを使用することができますtr

wc filename | tr ' ' '\n' 

または数字だけを希望する場合:

wc filename | tr ' ' '\n' | head -3

答え2

行ごとに項目があることが気に入りますxargs -n XXXX

望むより:

$ wc a
 3  5 21 a
$ wc < a
 3  5 21
$ wc < a | xargs -n 1
3
5
21

答え3

printf %d\\n $(wc <file)

printfこれにより、各引数の間に改行文字が挿入されます。これは基本的に$IFS分割時の出力間のスペースです。wc

たとえば、

printf %d\\n $(wc <<< $(seq -s" some splitter $IFS" 100))
100
298
1975

答え4

プロセス置換(ksh、zsh、bash)をサポートするシェルを使用すると、次のことができます。

read line word byte < <(wc < file)
echo "file has $line lines, $word words and $byte bytes"

AT&T ksh または zsh を使用して、

wc < file | read line word byte

また、動作する必要があります。

関連情報