GNU/Linux >> Linux の 問題 >  >> Linux

Linux でファイルの行数を数える方法 (wc および nl コマンドの例)

Linux コマンド wc および nl は、ファイル内の単語数、行数、バイト数などを特定するのに役立ちます。このチュートリアルでは、これら 2 つの非常に便利なコマンドの使用方法をさまざまな例で説明します。

この記事全体の例で使用される基本的なテキスト ファイルを以下に示します。

$ cat sort.txt
UK
Australia
Newzealand
Brazil
America

Linux nl コマンドの例

Linux の nl ユーティリティは、ファイルの行に番号を付けるために使用されます。

マニュアルページの構文と説明は次のとおりです:

<ブロック引用>

概要
nl [オプション]… [ファイル]…

説明
各 FILE を行番号を追加して標準出力に書き出します。 FILE がない場合、または FILE が - の場合は、標準入力を読み取ります。

1.基本的な例

以下は、nl コマンドを使用してファイルの行に番号を付ける方法を説明する基本的な例です。

$ cat sort.txt
UK
Australia
Newzealand
Brazil
America

$ nl sort.txt
     1	UK
     2	Australia
     3	Newzealand
     4	Brazil
     5	America

nl コマンドを使用すると、ファイル sort.txt のすべての行に番号が付けられていることがわかります。

2. -i オプションを使用して任意の値で行番号を増やします

オプション -i を使用すると、行番号のデフォルトの増分 1 をオーバーライドできます。

以下は、-i を使用して行番号の増分を 5 に増やした例です:

$ nl -i5 sort.txt
     1	UK
     6	Australia
    11	Newzealand
    16	Brazil
    21	America

デフォルトの 1,2,3... の代わりに、行番号が 5 ずつ増加して表示されるようになりました (つまり、1,6,11...)

3. -s オプションを使用して行番号の後に文字列を追加

デフォルトでは、nl コマンドは行番号のみを追加します。ただし、-s オプションを使用すると、行番号と行テキストの間の区切りとして機能する任意の文字列を追加できます。

以下に例を示します:

$ nl -s. sort.txt
     1.UK
     2.Australia
     3.Newzealand
     4.Brazil
     5.America

行番号の後に文字「.」が追加されていることがわかります。

4. -w オプションを使用して行番号に別の列を使用する

行番号表示の列は-wオプションで変更できます。

以下に例を示します:

$ nl -w1 sort.txt
1	UK
2	Australia
3	Newzealand
4	Brazil
5	America

$ nl -w2 sort.txt
 1	UK
 2	Australia
 3	Newzealand
 4	Brazil
 5	America

$ nl -w3 sort.txt
  1	UK
  2	Australia
  3	Newzealand
  4	Brazil
  5	America

$ nl -w4 sort.txt
   1	UK
   2	Australia
   3	Newzealand
   4	Brazil
   5	America

$ nl -w5 sort.txt
    1	UK
    2	Australia
    3	Newzealand
    4	Brazil
    5	America

$ nl -w6 sort.txt
     1	UK
     2	Australia
     3	Newzealand
     4	Brazil
     5	America

上記の完全な出力は、行番号の表示列を変更する方法についての良いアイデアを提供します。

5. -b オプションを使用して、行番号付けに STYLE を使用します

行番号付けには、さまざまな STYLE を使用できます。マニュアルページから:

<ブロック引用>

STYLE は次のいずれかです:

  • a – すべての行に番号を付ける
  • t – 空でない行のみに番号を付ける
  • n – 行数なし
  • pBRE – 基本的な正規表現 BRE に一致する行のみに番号を付ける

以下の例では、オプション -b で STYLE として正規表現「pA」を使用しています。この正規表現は「A」で始まる行に一致するため、nl コマンドはそれらの行のみに番号を付けます。

$ nl -bpA sort.txt
       UK
     1	Australia
       Newzealand
       Brazil
     2	America

したがって、「A」で始まる行だけに番号が付けられていることがわかります。

6. -n オプションを使用して行番号を挿入するには、別の FORMAT を使用してください

行番号の挿入に使用できるさまざまな FORMAT があります。マニュアルページから:

<ブロック引用>

FORMAT は次のいずれかです:

  • ln – 左揃え、先行ゼロなし
  • rn – 右寄せ、先行ゼロなし
  • rz – 右揃え、先行ゼロ

上記のすべての形式を示す例を次に示します:

$ nl -nln sort.txt
1     	UK
2     	Australia
3     	Newzealand
4     	Brazil
5     	America

$ nl -nrn sort.txt
     1	UK
     2	Australia
     3	Newzealand
     4	Brazil
     5	America

$ nl -nrz sort.txt
000001	UK
000002	Australia
000003	Newzealand
000004	Brazil
000005	America

sed コマンドを使用して、ファイル内の行数をカウントすることもできます。

Linux wc コマンドの例

Linux の wc ユーティリティは、ファイルの改行数、単語数、バイト数などの情報を出力するために使用されます。

マニュアルページの構文と説明は次のとおりです:

<ブロック引用>

概要
wc [オプション]… [ファイル]…
wc [オプション]… –files0-from=F

説明
各 FILE の改行数、単語数、およびバイト数を出力し、複数の FILE が指定されている場合は合計行数を出力します。 FILE がない場合、または
FILE が - の場合は、標準入力を読み取ります。単語とは、空白で区切られた、長さがゼロでない一連の文字です。

1.基本的な例

以下は Linux の wc コマンドの基本的な例です:

$ cat sort.txt
UK
Australia
Newzealand
Brazil
America

$ wc sort.txt
 5  5 41 sort.txt

出力で生成される 3 つの数値は、行数、単語数、およびバイト数に対応します。これら 3 つの数字の後にファイル名が続きます。

2. -w オプションで単語数を表示

ファイルの単語数は、-w オプションを使用して明示的に表示できます。

以下に例を示します:

$ wc -w sort.txt
5 sort.txt

したがって、単語数が出力され、その後にファイル名が続くことがわかります。

3. -L オプションで最長行の長さを表示

wc コマンドは、ファイル内の最長行の長さを表示するために使用できるオプション -L を提供します。

以下に例を示します:

$ wc -L sort.txt
10 sort.txt

そのため、最長の行 (この場合は「ニュージーランド」) の長さが出力に表示されていることがわかります。

4. -l オプションで改行数を表示

wc コマンドにはオプション -l が用意されており、出力に改行の数を表示できます。

以下に例を示します:

$ wc -l sort.txt
5 sort.txt

そのため、ファイル sort.txt には 5 つの改行があることがわかります

5. -c オプションでバイト数を表示

wc コマンドの -c オプションを使用すると、ファイルの総バイト数を表示できます。

以下に例を示します:

$ wc -c sort.txt
41 sort.txt

Linux
  1. Linuxでコマンドラインからファイルとディレクトリを削除する方法

  2. Linuxでコマンドラインからファイルを分割して結合する方法

  3. Linuxコマンドラインでファイルの特定の行を表示する方法

  1. Linuxwcコマンド

  2. UNIX/Linux でファイルの行数を数える方法

  3. Linux での ln コマンドの例

  1. ターミナル/コマンドラインを使用してLinuxでファイルを作成する方法

  2. LinuxのWcコマンド(行、単語、文字の数を数える)

  3. Linux での file コマンドの例