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

新Linuxコマンド演習26 概要
「新Linuxコマンド演習26」では、Linuxのコマンド操作で頻繁に使われる
パイプ( | ) と メタキャラクタ( * , ? , [] ) の基本を学びます。
パイプを使えばコマンド同士をつなげて出力を渡すことができ、
メタキャラクタを使えば複数のファイルを一度に指定して操作することができます。

パイプ(Pipe)とは
パイプは、あるコマンドの出力を別のコマンドの入力として渡す仕組みです。
複数のコマンドを組み合わせることで、柔軟で効率的な処理が可能になります。
コマンド書式
| 書式 | 説明 |
|---|---|
| コマンド1 | コマンド2 | コマンド1の出力をコマンド2の入力に渡す |
使用例
[suzuki@AlmaLinux ~]$ cat /etc/passwd | lessこのコマンドは、catでファイル内容を出力し、lessでページ単位に表示します。
長いファイルでもスクロールしながら確認できます。
lessコマンドの主な操作キー
| キー操作 | 説明 |
|---|---|
| スペースキー | 次のページを表示 |
| Enterキー | 1行ずつ進む |
| ↑ / ↓ | 1行上 / 下にスクロール |
| b | 前のページへ戻る |
| g | ファイルの先頭へ移動 |
| G | ファイルの末尾へ移動 |
| /文字列 | 検索(nで次、Shift+nで前) |
| q | 終了する |
メタキャラクタ(Meta Characters)とは
メタキャラクタとは、特別な意味を持つ記号です。
ファイル名をパターンでまとめて指定することができ、操作の効率を上げます。
| メタキャラクタ | 意味 | 使用例 |
|---|---|---|
| * | 0文字以上の任意の文字列に一致 | ls *.txt |
| ? | 任意の1文字に一致 | ls ?.txt |
| [] | []内の任意の1文字に一致 | ls [ab].txt |
演習問題+模範解答例
演習01:パイプで出力をつなぐ
問題
catコマンドの出力をlessコマンドに渡して、ページ単位で表示してください。
模範解答例
[suzuki@AlmaLinux ~]$ cat /etc/passwd | less解説
| (パイプ)を使うことで、cat の出力を less に引き渡します。
長いテキストファイルをページごとに確認できる便利な方法です。
演習02:練習用のディレクトリとファイルを作成する
問題
メタキャラクタの練習に使うためのディレクトリと空ファイルを、最小限のコマンドで作成してください。
模範解答例
[suzuki@AlmaLinux ~]$ mkdir samdir
[suzuki@AlmaLinux ~]$ cd samdir
[suzuki@AlmaLinux samdir]$ touch {1..4}.txt {11,22,33,44}.txt {a..d}.txt解説
- mkdir samdir:新しいディレクトリを作成します。
- cd samdir:そのディレクトリに移動します。
- touch {1..4}.txt {11,22,33,44}.txt {a..d}.txt
・波かっこ展開(Brace Expansion)を使って複数のファイル名を一度に生成します。
・{1..4} → 1.txt ~ 4.txt
・{11,22,33,44} → 11.txt, 22.txt, 33.txt, 44.txt
・{a..d} → a.txt ~ d.txt
確認コマンド
[suzuki@AlmaLinux samdir]$ ls
1.txt 2.txt 3.txt 4.txt 11.txt 22.txt 33.txt 44.txt
a.txt b.txt c.txt d.txt演習03:メタキャラクタ「 * 」を使う
問題
拡張子が .txt のすべてのファイルを表示してください。
模範解答例
[suzuki@AlmaLinux samdir]$ ls *.txt
1.txt 2.txt 3.txt 4.txt 11.txt 22.txt 33.txt 44.txt
a.txt b.txt c.txt d.txt解説
* は任意の長さの文字列に一致します。
このため、すべての .txt ファイルが表示されます。
演習04:メタキャラクタ「?」を使う
問題
ファイル名が1文字+.txtの形式になっているファイルのみ表示してください。
模範解答例
[suzuki@AlmaLinux samdir]$ ls ?.txt
1.txt 2.txt 3.txt 4.txt a.txt b.txt c.txt d.txt解説
? は「任意の1文字」を意味します。
2文字のファイル(例:11.txt)は表示されません。
演習05:メタキャラクタ「[]」を使う
問題
a または b で始まるファイルを表示してください。
模範解答例
[suzuki@AlmaLinux samdir]$ ls [ab].txt
a.txt b.txt解説
[ab] は「aまたはbで始まる」ファイル名を指定します。
演習06:範囲指定でファイルを検索する
問題
1〜3で始まるファイル名を表示してください。
模範解答例
[suzuki@AlmaLinux samdir]$ ls [1-3].txt
1.txt 2.txt 3.txt解説
[1-3]は「1〜3のいずれかの数字」に一致します。
範囲を使って連番ファイルをまとめて扱えます。
演習終了時の作業
問題
作成したディレクトリとファイルを削除してください。
模範解答例
[suzuki@AlmaLinux samdir]$ cd ..
[suzuki@AlmaLinux ~]$ rm -r samdir解説
-r オプションを付けることで、ディレクトリ内のファイルをまとめて削除します。
まとめ
「新Linuxコマンド演習26」では、
- パイプ( | )でコマンドをつなげる方法
- メタキャラクタ( * , ? , [] )でファイルをまとめて操作する方法
- touchと波かっこ展開 {} で練習用ファイルを最小コマンドで作る方法
を学びました。
これらはLinux操作の基礎中の基礎であり、
今後学ぶ「grep」「sort」「find」などのコマンドでも頻繁に登場します。
ぜひ実際に端末で試し、感覚的に使いこなせるように練習してみましょう。
