目次:
LinuxおよびUnixライクなオペレーティングシステムでは、
wc
コマンドを使用して、指定された各ファイルまたは標準入力の行数、単語数、文字数、およびバイト数をカウントし、結果を出力できます。
このチュートリアルでは、シンプルで実用的な例を使用して
wc
コマンドの使用方法を示します。
wc
コマンドの使用方法
wc
コマンドの構文は次のとおりです。
wc OPTION……
wc
コマンドは、ゼロ個以上の入力
FILE
名を受け入れることができます。
FILE
が指定されていない場合、または
FILE
が
-
場合、
wc
は標準入力を読み取ります。 単語は、スペース、タブ、または改行で区切られた文字列です。
オプションなしで使用した場合の最も単純な形式では、
wc
コマンドは、引数として渡された各ファイルの4列、行数、単語、バイト数、およびファイル名を出力します。 標準入力を使用する場合、4番目の列(ファイル名)は表示されません。
たとえば、次のコマンドは、仮想ファイル
/proc/cpuinfo
に関する情報を表示します。
wc /proc/cpuinfo
出力は次のようになります。
448 3632 22226 /proc/cpuinfo
- 448は行数です。 3632は単語の数です。 22226は文字数です。
標準入力を使用する場合、ファイル名は表示されません。
wc < /proc/cpuinfo
448 3632 22226
複数のファイルに関する情報を表示するには、ファイル名をスペースで区切って引数として渡します。
wc /proc/cpuinfo
このコマンドは、各ファイルに関する情報と、合計統計を含む行を提供します。
448 3632 22226 /proc/cpuinfo 49 143 1363 /proc/meminfo 497 3775 23589 total
以下のオプションでは、印刷するカウントを選択できます。
-
-l
、----lines
行数を出力します。-w
、----words
単語数を出力します。-m
、----chars
文字数を出力します。-c
、----bytes
バイト数を出力します。-L
、----max-line-length
最も長い行の長さを出力します。
複数のオプションを使用する場合、カウントは次の順序で出力されます:改行、単語、文字、バイト、最大行長。
たとえば、使用する単語の数のみを表示するには:
wc -w /proc/cpuinfo
3632 /proc/cpuinfo
次に、行数と最長行の長さを出力する別の例を示します。
wc -lL /proc/cpuinfo
448 792 /proc/cpuinfo
--files0-from=F
オプションを使用すると、
wc
はファイル
F
NULで終わる名前で指定されたファイルから入力を読み取ることができます。
F
が
-
場合、標準入力から名前を読み取ります。 たとえば、
find
コマンドを使用してファイルを検索し、それらのファイルを
wc
への入力として提供できます。
find /etc -name 'host*' -printf0 | wc -l --files0-from=-
出力には、名前が「host」で始まる
/etc
ディレクトリ内のすべてのファイルの行数が表示されます。
4 /etc/host.conf 27 /etc/avahi/hosts 1 /etc/hostname 14 /etc/hosts 46 total
行数を数える
wc
コマンドは、主に
-l
オプションとともに使用され、テキストファイルの行数のみをカウントします。 たとえば、
/etc/passwd
ファイルの行数をカウントするには、次のように入力します。
wc -l /etc/passwd
最初の列は行数で、2番目の列はファイルの名前です。
単語数を数える
テキストファイル内の単語数のみをカウントするには、
wc -w
後にファイル名を続けて使用します。 次の例では、
~/Documents/file.txt
ファイル内の単語の数をカウントします。
wc -l /etc/passwd
単語の数は最初の列に表示されます:
513 /home/linuxize/Documents/file.txt
WCコマンドの例
wc
コマンドは、パイピングを通じて他のコマンドと組み合わせて使用できます。 以下に例を示します。
現在のディレクトリ内のファイルのカウント
find
コマンドは、現在のディレクトリにあるすべてのファイルのリストを各ファイル名とともに1行で
wc
コマンドに渡します
wc
コマンドは、行数をカウントして結果を出力します。
ユーザー数を数える
次の例では、
wc
を使用して
getent
コマンドの出力から行数をカウントします。
結論
wc
コマンドは「単語数」の略で、非常に単純な構文を持っています。 1つまたは複数のテキストファイルの行、単語、バイト、および文字の数をカウントできます。