BashでWCコマンドを使用する方法
テキストドキュメント内の行、音節、文字の総数を数えるには、「wc」というBash関数を使用します。これは「ワードカウント」を意味します。出力は4つの列で表示されます。最初の列には行数が表示され、2番目の列にはファイル内の単語がリストされます。3番目の列には文字数がリストされ、最後の列にはファイル名が表示されます。この「wc」コマンドは、「-c」や「-w」など、この記事で扱ういくつかのフラグへのアクセスを提供します。
Ubuntu 20.04のBashで「WC」コマンドを使用する
各入力ファイルについて、「wc」関数または「単語数」は、新しい行、単語、およびバイトの数を出力します。一般的に、「wc」コマンドをファイルと共に使用することで、ファイル内の行数、文字数、または単語数を取得できます。これが必要になるさまざまなケースを考えてみましょう。まず、次のコマンドを使用してディレクトリをデスクトップに移動する必要があります。なぜなら、「datafile.txt」という名前のテキストファイルがデスクトップに保存されているからです:
Linux@linux:~$ cd Desktop/さて、私たちは「datafile.txt」というファイル名を使って「wc」コマンドを実行し、そのファイルに何行、何語、何文字が含まれているかを調べます。コマンドを入力した後、結果を得るためにキーボードのエンターキーを押します。
Linux@linux:~/Desktop$ wc datafile.txt以下の「datafile.txt」を示しますので、出力をすぐに把握できます:
この関数の実行後、次のような出力が返されます。最初の結果は「3」で、これはこのファイルに3つの行があることを示しています。2番目の出力は「10」で、これは1行あたり10の単語があることを示しています。3番目の出力はファイルの文字数を表示します。そして最後の出力はファイル名「datafile.txt」を表示します。
ファイルの行数は、以下のセクションで変更されており、さらに行を追加した後の出力も評価しています。現在、「7」行があり、次の画像に示されています。行数が増えるにつれて、単語と文字も増加します。
同じファイル内の行数を増やしたため、同じファイル名「datafile.txt」を使用して、同じコマンドを使っています。
Linux@linux:~/Desktop$ wc datafile.txt出力を確認するには、エンターキーを押してください。出力で、行数、単語数、文字数がどのように変わるかを見ることができます。行数は7に増え、単語数は60に増え、文字数は349に増えます。
「WC」コマンドのオプションを使う
「wc」コマンドは、いくつかの可能性を提供します。この「wc」は、さまざまなオプションを使用して、単に行数、ファイルに含まれているバイト数、ファイル内に存在する最長行、または複数のテキストファイルをカウントしたい場合に役立ちます。
「-c」オプションを使用してバイト数を印刷する
ここでは、「wc」コマンドと「datafile.txt」というファイル名に「-c」フラグを使用して、バイト数または文字数を決定します。「-c」の代わりに、「wc」コマンドに「-bytes」を使用することで、テキストファイルに含まれるバイトの合計数を表示することもできます。
Linux@linux:~/Desktop$ wc -c datafile.txtエンターキーを押すと、ファイルのバイト数が出力に表示されます。ファイル内の文字の総数は「349」です。以下の画像に示すように、ファイル名も出力されます:
-lオプションを使用して行数を印刷する
このセクションでは、「wc」コマンド、「-l」フラグ、およびテキストファイルの名前を使用して、ファイルの行数を出力します。
Linux@linux:~/Desktop$ wc -l datafile.txtこのコマンドを実行した後、"datafile.txt"にはファイルに"7"行あることが表示されます。
「-w」オプションで単語数を印刷する
-wオプションとwcコマンドを使用して、このセクションでは「datafile.txt」の総単語数を表示します。コマンドは以下に示されています。Enterキーを押して実行すると、結果が画面に表示されます:
Linux@linux:~/Desktop$ wc -w datafile.txt結果に表示される「60」という数字は、「datafile.txt」が合計「60」語含んでいることを示しています。
テキストファイルの最長行の文字を表示する
このセクションでは、大文字の(-L)フラグが使用されており、ファイルの最長行の文字数を出力します。まず、ファイルを開いて、最も長い行を特定します。以下のグラフィックは、使用されているファイルを示しています。次の図に示すように、合計「7」行があり、行「6」には最も多くのテキストがあります。このファイルを見ることで、行「6」が最長であることがわかります。しかし、「wc」と「-L」コマンドを使用して、この情報を出力に印刷することもできます。
Linux@linux:~/Desktop$ wc -L datafile.txt「6」行が最も長いため、このコマンドは「6」行の総文字数を正常に出力します。それは合計「115」です。
複数のファイルからのカウント
この部分では、デスクトップに2つのテキストファイルが作成されているので、「file2.txt」という名前の別のテキストファイルをこのセクションに作成します。次に、「wc」プログラムを使用して、両方のテキストファイルの行、単語、および文字を集計します。
このコマンドを実践してみましょう。最初のファイル「datafile.txt」と2番目のファイル「file2.txt」の名前を書く前に、「wc」コマンドを使用します。このコマンドの出力は3行で表示されます。最初の行には最初のファイルの行数、単語数、文字数の合計が表示されます。2行目には2番目のファイルの単語数、文字数、行数の合計が表示されます。さらに、3行目には両方のファイルの単語数、文字数、行数が合計されます。
Linux@linux:~/Desktop$ wc datafile.txt file2.txtこのコマンドが実行されると、ファイルに関する情報が出力されます。最初の行には「datafile.txt」ファイルが合計「7」行、「70」単語、そして「494」文字を持っていることが表示されています。一方、2番目のファイルは合計「3」行、「3」単語、そして「13」文字です。最後の行には両方のファイルの合計が表示されており、両方のファイルを組み合わせた後の行、単語、文字の合計は「10」、「73」、「507」となっています。
結論
この記事では、Ubuntu 20.04バージョンを使用してファイル内の行数、単語数、および文字数の合計を取得するための「wc」Bash関数の使い方について説明しました。 「-c」、「-L」、「-w」などのさまざまな「wc」コマンドフラグを使用しました。最終セクションでは、複数のテキストファイルの行数、単語数、および文字数の合計を印刷しました。完成セクションでは、各ファイルのカウントの合計である総合計を表示しました。










