ワイルドカードを使おう:*
*は「何文字でもOK」を表す便利な記号です。
👉 *.txt で「拡張子が .txt の全ファイル」をまとめて指せるようになるのが今回のゴールです。
📖 * は「何文字でもOK」のジョーカー
*.txt と書くと、シェル(通訳さん)が 実行する前に 本物のファイル名のリストに置き換えてくれます。これを「シェル展開」と呼びます。
あなたが打つ: ls *.txt シェルが「展開」する: ls memo.txt names.txt list.txt ↑ 今あるファイル名がここに埋め込まれる 実際に動くコマンド: ls memo.txt names.txt list.txt
🎯 * でできること例
| パターン | 当てはまる名前 |
|---|---|
*.txt | すべての .txt ファイル |
memo* | memo で始まるすべて |
*memo* | memo を含むすべて |
file?.txt | file の後に1文字だけ(file1.txt、fileA.txtなど) |
⚠️ rm * は「ぜんぶ消す」になるので絶対に打たないこと。
🧠 できるようになること
*がシェルによってファイル名に展開されるしくみを知っているlsの役割を、結果の例から確かめられる- 練習用ディレクトリの中で安全に試せる
🧰 用意するもの
- このページの「🖥 れんしゅうターミナル」(練習用ディレクトリ
linux-tanken入り) - キーボードで英数字と記号を入力できること
🖼 ターミナルの見本
このコマンドを実行すると、こんな結果になります(環境によって少し違うことがあります)。
📺 実行例
$ ls *.txt iro.txt list.txt log.txt memo.txt names.txt plan.txt
⌨️ 今日のコマンド
Terminalれんしゅうターミナル
ls *.txt🚀 やってみよう
cd ~/linux-tankenで練習場所に入ります。ls *.txtと入力してEnterキーを押します。- ファイル名・ディレクトリ名が一覧で表示されることを確認します。
💡 探検ポイント
*はシェルが「実行前に」本物のファイル名に置き換える。シェル展開のルールが見えると賢く使える。
🎮 チャレンジ
ls *.csvとls *.txtで、ひっかかるファイルのちがいを見よう。ls memo.*のように「名前が決まっていて拡張子がわからない」探し方も試そう。ls *o*は何がひっかかる?予想してから実行しよう。
📝 ふりかえり
*.txtはどんな名前のリストに展開された??と*の違いを1行で言うと?rm *を絶対に打たない理由は?
❓ うまくいかないとき
- command not found → コマンド名のスペル確認。Tab補完で打ち間違いを防げる
- No such file or directory →
lsでファイル名・パスを見直す - 画面が固まった →
Ctrl + Cでコマンドを止める - 画面が乱れた →
clearまたはCtrl + Lで整理する
👨👩👧 おうちの人・先生へ
この回はLinux初級の安全な操作範囲です。困ったときの対処として「直前のコマンド」「画面に出たメッセージ」をメモしておくと、次回の質問がスムーズになります。
