LinuCレベル1 101試験の例題と解説
1.02.2基本的なファイル管理の実行
今回は、LinuCレベル1 Version10.0 101試験の試験範囲から、「1.02.2 基本的なファイル管理の実行」についての例題を解いてみます。今回は、ディレクトリ・ファイル等を絞り込みする際に非常に役立つワイルドカード規則について学んでみましょう。
例題
bashを使用している環境において、下記のコマンドを実行したとき表示されるものファイル名として正しいものはどれか。選択肢から1つ選択してください。
$ ls *.?[0-8]
- filename.c9
- filename.php
- filename.a3
- filename.4
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「 filename.a3 」です。
ワイルドカードには下記のものがあります。
- *(アスタリスク)
任意の0文字以上の文字列
例:「apple」を含むファイルを表示したい場合 → 「ls *apple*」
- ?(クエスチョンマーク)
任意の1文字
例:「apple」の後に2文字書かれているファイルを表示したい場合 → 「ls apple??」
- [](大括弧)
大括弧内のいずれかの文字を含むものを表示
直前に「!」を付けた場合は、大括弧内の文字を含まないものを表示
例:「apple」の後にAからZまでのアルファベットが含まれているファイルを表示したい場合 → 「ls apple[A-Z]」
例:「apple」の後にAからZまでのアルファベットが含まれていないファイルを表示したい場合 → 「ls apple[!A-Z]」
上記のワイルドカードを組み合わせると、簡単に表示したいファイルを絞り込むことができます。
選択肢の解説は以下です。
今回のワイルドカードでは、下記の条件を満たしている必要があります。
- ピリオドの前に0文字以上の任意の文字列
- ピリオドの後に「任意の一文字」が一つ
- 上記の後ろに0から8までの数字
1. filename.c9
誤りです。
この選択肢では、条件3を満たしていないため表示されません。 [](大括弧)はその中に含まれるものを表示しますので、今回は0から8以外の数字は表示されません。
2. filename.php
誤りです。
この選択肢は、条件の2と3を満たしていないため表示されません。今回の条件は「?」が一つですので、文字は一文字が条件になります。また上記の一文字の後には0から8までの数字が入らなければなりません。
3. filename.a3
正解です。
この選択肢は、ワイルドカードの全ての条件を満たしているため表示されます。
4. filename.4
誤りです。
この選択肢では、条件の2と3を満たしていないため表示されません。4という任意の一文字の後に[](大括弧)内の0から8までの数字が必ず必要になります。
また、4が[](大括弧)内の0から8までの数字を表しているとしたら、その前に任意の一文字が必要になります。
ワイルドカードを活用すれば、複数のファイルに対する作業を大幅に短縮することができます。
ぜひ活用していきましょう。
例題解説者
株式会社デージーネット ソリューション開発部 山中咲彩