LPIC-1 101試験 模試③:21-24

問題21:シェルで現在設定されている環境変数の一覧を表示するために使用する正しいコマンドは次のうちどれですか(2つ選択)。

A) printenv
B) export
C) env
D) print

解答解説を開く
正解)A,C

【解説】
A) 正解です。printenv コマンドは環境変数を一覧表示します。
B) 誤りです。export は変数を環境変数としてエクスポートするために使用しますが、一覧表示のためのコマンドではありません。
C) 正解です。env コマンドは環境変数を表示するために使用されます。
D) 誤りです。print というコマンドは存在せず、環境変数の一覧表示はできません。

問題22:シェルスクリプト内で、forループを使用して配列 MYARRAY のすべての要素を順に表示するための正しいコードはどれですか?

A)

for i in MYARRAY; do  
  echo $i  
done

B)

for i in ${MYARRAY[*]}; do  
  echo $i  
done

C)

for i in "${MYARRAY[@]}"; do  
  echo $i  
done

D)

for i in ${MYARRAY[@]}; do  
  echo $i  
done
解答解説を開く
正解)C

【解説】
A) 誤りです。MYARRAY は単なる文字列として扱われ、配列の要素にはアクセスできません。
B) 誤りです。${MYARRAY[*]} はすべての要素を1つの文字列として扱うため、要素ごとに分割されません。
C) 正解です。"${MYARRAY[@]}" は配列の各要素を個別に処理する正しい方法です。
D) 誤りです。${MYARRAY[@]} を使用すると、空白を含む要素が分割される可能性があり、期待どおりの出力にならない場合があります。

問題23:bashをログインシェルとするユーザーがログインした際、直前のコマンド履歴が記録されているファイルはどれですか?

A) ~/.bash_logout
B) ~/.bash_history
C) ~/.bash_profile
D) ~/.bash_login

解答解説を開く
正解)B

【解説】
A) 誤りです。~/.bash_logout はログアウト時に実行される設定ファイルで、コマンド履歴の記録とは関係ありません。
B) 正解です。~/.bash_history はコマンド履歴が記録されるファイルです。
C) 誤りです。~/.bash_profile はログイン時に実行されるスクリプトで、コマンド履歴の記録とは関係ありません。
D) 誤りです。~/.bash_login は~/.bash_profileがない場合に使用されるファイルで、履歴の記録には関係しません。

問題24:manコマンドが参照するマニュアルデータが格納されているディレクトリはどれですか?

A) /usr/share/man
B) /usr/local/manual
C) /usr/share/docs
D) /usr/local/share/man

解答解説を開く
正解)A

【解説】
A) 正解です。/usr/share/man は標準的なmanページの保存場所です。
B) 誤りです。このディレクトリはマニュアルデータの保存には使用されません。
C) 誤りです。/usr/share/docs はマニュアルではなくドキュメントを保存するためのディレクトリです。
D) 誤りです。このパスはmanページの標準的な保存場所ではありません。