LinuCレベル1 101試験の例題と解説
1.02.4ファイルの配置と検索
LinuCレベル1 101試験の出題範囲から「1.02.4 ファイルの配置と検索」についての例題を解いてみます。
ここでは、whereisコマンドについて確認しておきましょう。
例題
以下のコマンドを実行した場合、出力できない情報を1つ選択してください。
$ whereis bash
- コマンドのバイナリファイルの場所
- コマンドのソースファイルの場所
- コマンドのマニュアルファイルの場所
- コマンドの設定ファイルの場所
※この例題は実際の試験問題とは異なります。
解答と解説
正解は、「4.コマンドの設定ファイルの場所」です。
whereisコマンドは、コマンドのバイナリファイル、ソースファイル、およびマニュアルページファイルの場所を特定するためのコマンドです。
whereisコマンドの書式は以下の通りです。
whereis [オプション] [コマンド名]
主なオプションを以下に記載します。
-b
バイナリファイルを検索します。
-m
マニュアルファイルを検索します。
-s
ソースファイルを検索します。
-u
通常とは異なるエントリを持つコマンド名のみを表示します。
バイナリファイル、マニュアルファイル、ソースファイルの各タイプのエントリが一つだけでない場合、表示されます。
-B [ディレクトリ]
バイナリファイルを検索する場所を、ディレクトリで指定します。
-M [ディレクトリ]
マニュアルおよびInfo形式のドキュメントを検索する場所を、ディレクトリで指定します。
-S [ディレクトリ]
ソースファイルを検索する場所を、ディレクトリで指定します。
-f
ディレクトリの終了を示し、ファイル名の開始を示します。(「-B ディレクトリ -f コマンド名」のように使用)
-B, -M, -Sの各オプションが使用される場合に必ず使用する必要があります。
-l
whereisが使用している有効な検索パスのリストを出力します。
以下、使用例を記載します。
"ls"のバイナリファイル、ソースファイル、マニュアルファイルを全て検索する場合
$ whereis ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz
"ls"のバイナリファイルのみを検索する場合
$ whereis -b ls
ls: /usr/bin/ls
-bオプションを使用します。
"ls"のマニュアルファイルのみを検索する場合
$ whereis -m ls
ls: /usr/share/man/man1/ls.1.gz
-mオプションを使用します。
"ls"のソースファイルのみを検索する場合
$ whereis -s ls
ls:
-sオプションを使用します。
注:ファイルが見つからない場合、出力は空になります。
"/usr/share/man/man1"ディレクトリ内でのみ、"ls"のマニュアルファイルの検索を行う場合
$ whereis -M /usr/share/man/man1 -f ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz
-Mオプションを使用します。
whereisが使用している有効な検索パスのリストを出力する場合
$ whereis -l
bin: /usr/bin
bin: /usr/sbin
bin: /usr/lib
bin: /usr/lib64
bin: /etc
bin: /usr/games
bin: /usr/local/bin
bin: /usr/local/sbin
bin: /usr/local/etc
:
-lオプションを使用します。
また、コマンド毎にオプションを複数指定することも可能です。
"ls"と"tr"のバイナリおよびマニュアルページを検索し、"gcc"のマニュアルページのみを検索する場合
$ whereis -bm ls tr -m gcc
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz
tr: /usr/bin/tr /usr/share/man/man1/tr.1.gz
gcc: /usr/share/man/man1/gcc.1.gz /usr/share/info/gcc.info.gz
"ls","tr"には、-b,mオプションを使用します。
"gcc"には、-mオプションのみを使用します。
選択肢の解説は以下です。
問題文のコマンドを実行すると以下のように出力されます。
$ whereis bash
bash: /usr/bin/bash /usr/share/man/man1/bash.1.gz /usr/share/info/bash.info.gz
whereisコマンドは、コマンドのバイナリファイル、ソースファイル、およびマニュアルページファイルの場所を特定するためのコマンドです。
1.bashコマンドのバイナリファイルの場所
2.bashコマンドのソースファイルの場所
3.bashコマンドのマニュアルファイルの場所
よって、「4.bashコマンドの設定ファイルの場所」は whereisコマンドでは出力できない情報であるため、正解です。
今回は、whereisコマンドのサブコマンドについて確認を行いました。
whereisコマンドは、特定のコマンドがどのディレクトリに存在するか等、素早く検索することができるため、使い方を理解し有効に活用しましょう。
例題作成者
株式会社デージーネット 経営企画室営業SEチーム 宮本 郁実