このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
Linux基礎:コマンド練習17

コマンド練習17
「コマンド練習17」では、6章の前半で登場したコマンドについて 練習問題を通して学びます。ここで扱うのは grep、head、tail です。これらは ファイル内容を検索・確認するための代表的なコマンド であり、ログの解析やテキスト処理で頻繁に使用されます。
grepは、ファイル内の文字列検索を行うコマンドです。headは、ファイルの先頭部分を表示するコマンドです。tailは、ファイルの末尾部分を表示するコマンドです。
ここでは、各コマンドの 書式、主なオプション、使用例 を表や図で解説し、その後に 「練習+模範解答例」 を提示します。

コマンド解説
1.grep コマンド
ファイルや標準入力から指定したパターンを検索します。
書式
grep [オプション] 検索パターン [ファイル名]主なオプション
| オプション | 説明 |
|---|---|
| -n | 行番号を表示 |
| -i | 大文字小文字を区別しない。 |
| -v | パターンに一致しない行を表示 |
| -r | ディレクトリを再帰的に検索 |
2.head コマンド
ファイルの先頭部分を表示します。
書式
head [オプション] [ファイル名]主なオプション
| オプション | 説明 |
|---|---|
| -n 数字 | 指定した行数を表示(デフォルトは10行) |
3.tail コマンド
ファイルの末尾部分を表示します。
書式
tail [オプション] [ファイル名]主なオプション
| オプション | 説明 |
|---|---|
| -n 数字 | 指定した行数を表示(デフォルトは10行) |
| -f | ファイルを監視し、追加された内容をリアルタイムに表示 |
練習問題 + 模範解答例
問題1
新しく sample.txt を作成し、以下の内容を記入してください。その後、grep を使って "Linux" を含む行を表示してください。
Hello World
Linux is great
Rocky Linux
grep command test模範解答例
[user@rocky9 ~]$ cat > sample.txt <<EOF
> Hello World
> Linux is great
> Rocky Linux
> grep command test
> EOF
[user@rocky9 ~]$ grep "Linux" sample.txt
Linux is great
Rocky Linux<<:ヒアドキュメント。区切文字列が入力されるまで標準入力します。
問題2
sample.txt に含まれる "linux" を大文字小文字を区別せずに検索してください。
模範解答例
[user@rocky9 ~]$ grep -i "linux" sample.txt
Linux is great
Rocky Linux問題3
sample.txt の先頭 2 行だけを表示してください。
模範解答例
[user@rocky9 ~]$ head -n 2 sample.txt
Hello World
Linux is great問題4
sample.txt の末尾 2 行だけを表示してください。
模範解答例
[user@rocky9 ~]$ tail -n 2 sample.txt
Rocky Linux
grep command test
tail -n 2 sample.txt問題5
新しく logfile.txt を作成し、1〜20 行までの数字を保存してください。その後、ファイルの末尾 5 行を表示してください。
模範解答例
[user@rocky9 ~]$ seq 1 20 > logfile.txt
[user@rocky9 ~]$ tail -n 5 logfile.txt
16
17
18
19
20問題6
logfile.txt の内容をリアルタイムで監視し、追加される行を表示してください。別の端末から echo "21" >> logfile.txt を実行すると表示されることを確認してください。
模範解答例
一つ目の端末(ターミナル)で以下のコマンドを実行します。
[user@rocky9 ~]$ tail -f logfile.txtもう一つ、端末(ターミナル)を起動して、次のコマンドを実行します。
[user@rocky9 ~]$ echo "21" >> logfile.txt一つ目の端末(ターミナル)の出力
11
12
13
14
15
16
17
18
19
20
21「Ctrl」+「C」で終了します。
まとめ
「コマンド練習17」では、6章の前半で登場したコマンドについて 学びました。
grepでファイル内容を検索headでファイルの先頭を表示tailでファイルの末尾やリアルタイム監視
これらを活用することで、Linux システムの ログ解析やテキスト処理を効率的に行う技術 を習得できます。
