「Linuxコマンド - head」の版間の差分

提供:MochiuWiki : SUSE, EC, PCB
ナビゲーションに移動 検索に移動
(ページの作成:「== 概要 == <br><br> == headコマンドとtailコマンドを使用したフィルタリング == ==== 先頭行からN行を表示する ==== テキストファイ…」)
 
(文字列「__FORCETOC__」を「{{#seo: |title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki |keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板 |description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This pag…)
 
(同じ利用者による、間の7版が非表示)
1行目: 1行目:
== 概要 ==
== 概要 ==
 
headコマンドは、テキストファイルや標準入力の先頭部分を表示するためのLinuxユーティリティである。<br>
ファイルやデータの先頭部分を見るという概念を体現しており、迅速な内容確認や分析の出発点として重要な役割を果たしている。<br>
<br>
特に、大きいサイズのファイルを扱う場合、全体を読み込むことなく必要な情報だけを取得できるため、リソースを節約することができる。<br>
<br>
デフォルトでは先頭10行を表示するが、必要に応じて行数やバイト数を指定することができる。<br>
<br>
また、ログファイル等の先頭部分を確認することにより、問題の初期段階を素早く把握できるため、デバッグ支援にも有効である。<br>
<br>
* プレビュー機能
*: ファイルの内容を全て見ることなく、最初の部分だけを素早く確認できる。
* サンプリング
*: 大きなデータセットの一部を抽出して、データの構造や形式を把握するのに役立つ。
* ストリーム処理
*: パイプラインの一部として使用することもできるため、データストリームの先頭部分をフィルタリングできる。
<br><br>
<br><br>


== headコマンドとtailコマンドを使用したフィルタリング ==
== headコマンド ==
==== headコマンドとは ====
<code>head</code>コマンドは、テキストファイルの最初の10行を表示するコマンドである。<br>
表示する行数は、オプションで変更することができる。<br>
<br>
<code>head</code>コマンドは、パイプと組み合わせて別のコマンドの実行結果の先頭部分を表示する場合に使用されることが多い。<br>
head [オプション] <ファイル名>
コマンド | head [オプション]
<br>
==== headコマンドのオプション ====
<code>head</code>コマンドのオプションを下表に示す。<br>
<br>
<center>
{| class="wikitable" | style="background-color:#fefefe;"
|-
! style="background-color:#66CCFF;" | オプション
! style="background-color:#66CCFF;" | 説明
|-
| -c <数字><br>--bytes <数字> || 先頭から指定したバイト数のみ表示する。<br>マイナス(<code>-</code>)付きの数字を指定する場合、末尾の指定分を除いた全てを表示する。<br><br><code>-c 5 b</code>コマンドのように、単位を付加することも可能である。<br>
<code>b</code>の部分には、以下に示すオプションが指定できる。<br>
* b (512)
* KB (1000)
* K (1024)
* MB (1000*1000)
* M (1024*1024)
|-
| -n <数字><br>--lines <数字> || 先頭から指定した行数のみ表示する。<br>マイナス(<code>-</code>)付きの数字を指定する場合、末尾の指定分を除いた全てを表示する。
|-
| -q<br>--quiet<br>--silent || ファイルごとのヘッダ表示を行わない。(複数ファイルの指定時に付加する)
|-
| -v<br>--verbose || 常にファイルごとのヘッダ出力を行う。
|}
<br>
</center>
<br>
<u>※注意</u><br>
<u><code>head</code>コマンドのバージョンによっては、<code>head -10</code>のように、-数字」で行数を指定できる場合がある。</u><br>
<u>つまり、<code>head -10</code>と<code>head -n 10</code>は等価となる。</u><br>
<br>
==== 先頭行からN行を表示する ====
==== 先頭行からN行を表示する ====
テキストファイルの先頭からN行のみを表示する場合は、<code>head</code>コマンドを使用する。<br>
テキストファイルの先頭からN行のみを表示する場合は、<code>head</code>コマンドを使用する。<br>
33行目: 85行目:
  6
  6
  7
  7
<br><br>
== tailコマンド ==
==== tailコマンドのオプション ====
<code>tail</code>コマンドのオプションを下表に示す。<br>
<br>
<center>
{| class="wikitable" | style="background-color:#fefefe;"
|-
! style="background-color:#66CCFF;" | オプション
! style="background-color:#66CCFF;" | 説明
|-
| -c <数字><br>--bytes <数字> || 末尾の指定したバイト数のみ表示する。<br>マイナス(<code>-</code>)付きの数字を指定する場合、末尾の指定分を除いた全てを表示する。<br><br><code>-c 5 b</code>コマンドのように、単位を付加することも可能である。<br>
<code>b</code>の部分には、以下に示すオプションが指定できる。<br>
* b (512)
* KB (1000)
* K (1024)
* MB (1000*1000)
* M (1024*1024)
|-
| -n <数字><br>--lines <数字> || 末尾の指定した行数のみ表示する。<br>マイナス(<code>-</code>)付きの数字を指定する場合、末尾の指定分を除いた全てを表示する。
|-
| -q<br>--quiet<br>--silent || ファイルごとのヘッダ表示を行わない。(複数ファイルの指定時に付加する)
|-
| -v<br>--verbose || 常にファイルごとのヘッダ出力を行う。
|-
| -f<br>--follow || ファイルを監視して、内容が追加されるたびに末尾に表示する。<br>これは、ログ監視等に使用することが多い。
|}
<br>
</center>
<br>
<br>
==== 最下行からN行を表示する ====
==== 最下行からN行を表示する ====
65行目: 147行目:
  9
  9
  10
  10
<br>
<br><br>
 
== headコマンドとtailコマンドを使用したフィルタリング ==
==== 上からN行目および下からM行目までを表示する ====
==== 上からN行目および下からM行目までを表示する ====
テキストファイルの最上行からN行目〜最下行からM行目までを表示する場合は、<code>head</code>コマンドと<code>tail</code>コマンドを組み合わせて使用する。<br>
テキストファイルの最上行からN行目〜最下行からM行目までを表示する場合は、<code>head</code>コマンドと<code>tail</code>コマンドを組み合わせて使用する。<br>
90行目: 174行目:
{| class="wikitable" style="background-color:#fefefe;"
{| class="wikitable" style="background-color:#fefefe;"
|-
|-
! style="background-color:#00ffff;" | 行番号  
! style="background-color:#66ccff;" | 行番号  
! style="background-color:#00ffff;" | 処理1<br>tail -n +N  
! style="background-color:#66ccff;" | 処理1<br>tail -n +N  
! style="background-color:#00ffff;" | 処理2(パイプ)<br>head -n -(M-1)  
! style="background-color:#66ccff;" | 処理2(パイプ)<br>head -n -(M-1)  
! style="background-color:#00ffff;" | 出力
! style="background-color:#66ccff;" | 出力
|-
|-
| 1 || 消去 || 処理1で消去 || 消去
| 1 || 消去 || 処理1で消去 || 消去
117行目: 201行目:
</center>
</center>
<br><br>
<br><br>
{{#seo:
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux
|image=/resources/assets/MochiuLogo_Single_Blue.png
}}


__FORCETOC__
__FORCETOC__
[[カテゴリ:CentOS]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]]
[[カテゴリ:RHEL]][[カテゴリ:SUSE]][[カテゴリ:Raspberry_Pi]][[カテゴリ:PinePhone]]

2024年10月14日 (月) 15:20時点における最新版

概要

headコマンドは、テキストファイルや標準入力の先頭部分を表示するためのLinuxユーティリティである。
ファイルやデータの先頭部分を見るという概念を体現しており、迅速な内容確認や分析の出発点として重要な役割を果たしている。

特に、大きいサイズのファイルを扱う場合、全体を読み込むことなく必要な情報だけを取得できるため、リソースを節約することができる。

デフォルトでは先頭10行を表示するが、必要に応じて行数やバイト数を指定することができる。

また、ログファイル等の先頭部分を確認することにより、問題の初期段階を素早く把握できるため、デバッグ支援にも有効である。

  • プレビュー機能
    ファイルの内容を全て見ることなく、最初の部分だけを素早く確認できる。
  • サンプリング
    大きなデータセットの一部を抽出して、データの構造や形式を把握するのに役立つ。
  • ストリーム処理
    パイプラインの一部として使用することもできるため、データストリームの先頭部分をフィルタリングできる。



headコマンド

headコマンドとは

headコマンドは、テキストファイルの最初の10行を表示するコマンドである。
表示する行数は、オプションで変更することができる。

headコマンドは、パイプと組み合わせて別のコマンドの実行結果の先頭部分を表示する場合に使用されることが多い。

head [オプション] <ファイル名>
コマンド | head [オプション]


headコマンドのオプション

headコマンドのオプションを下表に示す。

オプション 説明
-c <数字>
--bytes <数字>
先頭から指定したバイト数のみ表示する。
マイナス(-)付きの数字を指定する場合、末尾の指定分を除いた全てを表示する。

-c 5 bコマンドのように、単位を付加することも可能である。

bの部分には、以下に示すオプションが指定できる。

  • b (512)
  • KB (1000)
  • K (1024)
  • MB (1000*1000)
  • M (1024*1024)
-n <数字>
--lines <数字>
先頭から指定した行数のみ表示する。
マイナス(-)付きの数字を指定する場合、末尾の指定分を除いた全てを表示する。
-q
--quiet
--silent
ファイルごとのヘッダ表示を行わない。(複数ファイルの指定時に付加する)
-v
--verbose
常にファイルごとのヘッダ出力を行う。



※注意
headコマンドのバージョンによっては、head -10のように、-数字」で行数を指定できる場合がある。
つまり、head -10head -n 10は等価となる。

先頭行からN行を表示する

テキストファイルの先頭からN行のみを表示する場合は、headコマンドを使用する。

head -n <行数>  # headコマンドで先頭から指定した行数分表示する


ファイルやコマンド実行結果等から、最初の数行のみを表示する場合は、
headコマンドを使用することで、先頭行から数えて指定行数までを表示することができる。

以下の例では、headコマンドで上3行を表示している。

seq 1 10 | head -n 3

1
2
3


先頭行から下からN行目までを表示する

headコマンドにマイナスの行数Nを指定することで、先頭行〜最下行からN行目までを表示することができる。

head -n -<末尾からの行数>  # headコマンドにマイナスの行数指定で末尾N行を除いて表示する


マイナスの行数は、最下行から数えた行数を意味し、headコマンドは先頭行からその行までを表示する。
つまり、headコマンドへのマイナス行数の指定は、最下行からN行を消去するという処理になる。

seq 1 10 | head -n -3

1
2
3
4
5
6
7



tailコマンド

tailコマンドのオプション

tailコマンドのオプションを下表に示す。

オプション 説明
-c <数字>
--bytes <数字>
末尾の指定したバイト数のみ表示する。
マイナス(-)付きの数字を指定する場合、末尾の指定分を除いた全てを表示する。

-c 5 bコマンドのように、単位を付加することも可能である。

bの部分には、以下に示すオプションが指定できる。

  • b (512)
  • KB (1000)
  • K (1024)
  • MB (1000*1000)
  • M (1024*1024)
-n <数字>
--lines <数字>
末尾の指定した行数のみ表示する。
マイナス(-)付きの数字を指定する場合、末尾の指定分を除いた全てを表示する。
-q
--quiet
--silent
ファイルごとのヘッダ表示を行わない。(複数ファイルの指定時に付加する)
-v
--verbose
常にファイルごとのヘッダ出力を行う。
-f
--follow
ファイルを監視して、内容が追加されるたびに末尾に表示する。
これは、ログ監視等に使用することが多い。



最下行からN行を表示する

テキストファイルの最下行〜N行のみを表示する場合、tailコマンドを使用する。

tail -n <行数>  # tailコマンドで下からN行を表示する


ファイルやコマンド実行結果等から下から数行のみを表示する場合は、
tailコマンドを使用することで、最下行から数えて指定行数までを表示することができる。

ログファイルの最新のログのみを参照する場合等、tailコマンドを使用する。
特に、ログファイルを同期しながら参照する時は、tailコマンドに-fオプションを付加する。

seq 1 10 | tail -n 3

8
9
10


先頭行のN行目から最下行までを表示する

tailコマンドに+<行数>を指定することで、先頭のN行目〜最下行までを表示することができる。

tail -n +<行数>  # tailコマンドにプラスの行数指定で先頭からN行を除いて表示する


+が無い場合、最下行から数えてN行目〜最下行までが表示されるが、+を付加する場合、先頭行のN行目から最下行までが表示される。
この時、表示にはN行目も含まれる。

seq 1 10 | tail -n +3

3
4
5
6
7
8
9
10



headコマンドとtailコマンドを使用したフィルタリング

上からN行目および下からM行目までを表示する

テキストファイルの最上行からN行目〜最下行からM行目までを表示する場合は、headコマンドとtailコマンドを組み合わせて使用する。

例えば、テキストファイルからヘッダ部分とフッタ部分を削除する場合は、
ヘッダ部の行数をN行、フッタ部の行数をM行として実行する時、全体からヘッダ部とフッタ部を除いた部分を取得できる。

tail -n +N | head -n -(M-1)  # 下からM行目が消えないように、コマンドには1を引いた値を指定する


以下の例では、上から2行目〜下から5行目までを表示している。
まず、tailコマンドで2行目〜から最下行までを出力して、次に、headコマンドで下から数えて5行目までを表示している。
headコマンドに4を指定しているのは、5を指定すると下から5行目も削除されてしまうため、それを避けるためである。

seq 1 10 | tail -n +2 | head -n -4

2
3
4
5
6


下表に、tailコマンドおよびheadコマンドが行う処理を視覚的に示す。
tailコマンドとheadコマンドのフィルタリングにより、最終的に残るのは2〜6行のみとなる。

表. N=2、M=5で実行した場合(tail -n +2 | head -n -4)

行番号 処理1
tail -n +N
処理2(パイプ)
head -n -(M-1)
出力
1 消去 処理1で消去 消去
2
3
4
5
6
7 消去 消去
8 消去 消去
9 消去 消去
10 消去 消去