LPIC-1 102試験 模試①:01-04

問題01:ログインシェルから子シェルでもアクセス可能な環境変数をすべてのユーザーに設定するために使用されるファイルはどれですか?

A) ~/.bashrc
B) /etc/bashrc
C) ~/.profile
D) /etc/profile

解答解説を開く
正解) D

【解説】
A) ~/.bashrc は誤りです。~/.bashrc はユーザーごとに設定され、ログインシェルではなく非ログインシェルに適用されます。

B) /etc/bashrc は誤りです。このファイルも非ログインシェルの設定に使用されます。

C) ~/.profile は誤りです。個々のユーザーのログインシェル設定に使用されますが、すべてのユーザーには適用されません。

D) /etc/profile が正解です。すべてのユーザーに対してログインシェルやその子シェルに適用される環境変数を設定します。

問題02:現在のシェルで script.sh を実行するための正しいコマンドはどれですか?

A) ./script.sh
B) bash script.sh
C) source script.sh
D) sh script.sh

解答解説を開く
正解) C

【解説】
A) ./script.sh は誤りです。./script.sh は新しいシェルを生成してスクリプトを実行するため、現在のシェルの環境に影響を与えません。

B) bash script.sh は誤りです。bash も新しいシェルを作成してスクリプトを実行します。

C) source script.sh が正解です。このコマンドは、現在のシェルのコンテキストでスクリプトを実行し、その結果や環境変数が現在のシェルに反映されます。

D) sh script.sh は誤りです。sh コマンドも新しいシェルを生成してスクリプトを実行します。

問題03:環境変数を一時的に設定するための正しいコマンドはどれですか?

A) export VAR=value
B) set VAR=value
C) env -u VAR=value
D) declare VAR=value

解答解説を開く
正解) A

【解説】
A) export VAR=value が正解です。export コマンドは、シェルおよびその子プロセスに対して環境変数を一時的に設定します。

B) set VAR=value は誤りです。set コマンドは位置引数やシェルのオプションを設定するために使用され、環境変数の設定には使われません。

C) env -u VAR=value は誤りです。env -u は環境変数を削除するために使用されます。

D) declare VAR=value は誤りです。declare コマンドは変数の属性を設定しますが、環境変数の設定には使われません。

問題04:Bashにおける関数の正しい説明はどれですか?

A) 一度実行されると削除される一時的なスクリプト
B) 同じコードを複数回実行するために定義されたコマンドのグループ
C) 複数のファイルを同時に処理するためのスレッド
D) 別のスクリプトを呼び出すためのインターフェース

解答解説を開く
正解) B

【解説】
A) 一度実行されると削除される一時的なスクリプト は誤りです。関数は定義されると、シェルが終了するか関数が削除されるまで保持されます。

B) 同じコードを複数回実行するために定義されたコマンドのグループ が正解です。関数は、再利用可能な一連のコマンドをまとめて定義し、必要に応じて複数回実行するために使用されます。

C) 複数のファイルを同時に処理するためのスレッド は誤りです。スレッドは並列処理の概念であり、Bashの関数とは関係ありません。

D) 別のスクリプトを呼び出すためのインターフェース は誤りです。関数はコマンドをまとめたものであり、他のスクリプトを呼び出すための特別なインターフェースではありません。