2.演習問題(操作)
(参考資料:LinuxEssentials合格テキスト&問題集より)
問題1
シェル、のコマンド入力で、 以前使用したかなり長いコマンドを再度実行したい。 最も簡単に実現できる方法を選択せよ。
選択肢
1.コマンドが出てくるまでCtrl- Pを入力し続ける
2.historyコマンドlessコマンドで履歴を表示し、端末アプリケーションのコピー& べースト機能を使用して入力する
3.Ctrl-Rを入力して実行したいコマンドを検索する
4.何度も使うコマンドは、シェルスクリプトにして保存しておく
問題2
ホームディレクトリにあるbinティレクトリをPATH環境変数に追加するコマンドとして、正しいものを選択せよ。
選択肢
1. PATH=$PATH+ " ~/bin "
2. env PATH ~/bin
3. PATH=$PATH : ~/bin
4. $PATH=$PATH : ~/bin
問題3
シェル変数と環境変数について、正しい記述を選択せよ。
選択肢
1. シェル変数は$名前で参照し、環境変数は%名前%で参照する
2. シェル変数はsetコマンドでセットし、環境変数はenvコマンドでセットする
3. シェル変数をe=po代すると環境変数に、環境変数を unexportするとシェル変数になる
4. 環境変数は子プロセスに引き継がれるが、シェル変数は引き継がれない
5. シェルスクリプトのなかでは、シェル変数は使用できるが環境変数は使用できない
問題4
システムのメモリの状態を調べるコマンドの名前を忘れてしまった。 manページからキーワードでコマンドを検索するために指定するオプションとして、 次のコマンドの下線部を正しいものを記入せよ・
man _________ memory
問題5
プロジェクトのソースコード共有ティレクトリから/projA/sourcesを、 ホームディレクトリの MySourcesにコピーしたい。 次のコマンドの下線部に指定するオプションとして、正しいものを選択せよ。
cp __________ /projA/sources ~/MySources
選択肢
1. -d
2. -a
3. -r
4.オプション指定の必要はない物
問題6
共有ディレクトリ/data/projectに頻繁にアクセスするため、ホームティレクトリにリンク teamを置きたい。なお、作業ティレクトリはホームティレクトリである。コマンドとして正しいものを選択せよ。
選択肢
1. ln -s team /data/project
2. ln -s /data/project team
3. In -d team /data/project
4. In -d /data/project team
問題7
1か月ほど前に作成した文書ファイルをどこに保管したか忘れてしまった。 ファイル名に contract という文字列を入れたことだけは覚えている。 ファイルを探すコマンドとして、正しいものを選択せよ。
選択肢
1. find contract
2. search contract
3. locate contract
4. dig contract
問題8
lessコマンドで複数のファイルを参照している。1つ前のファイルに戻るコマンドとして、正しいものを選択せよ。
選択肢
1. B
2. P
3. :b
4. :P
問題9
30行以上あるテキストファイルtextfileの10~20行目を取り出し、textfileの行番号を付けて表示したい。次のコマンドの下線部に置くパラメータの組み合わせとして、正しいものを選択せよ。
cat -n textfile | head ①_______ | tail ②_______
選択肢
1. ① -20、② -11
2. ① -20、② -10
3. ① +20、② -20
4. ① +20、② +10
問題10
findコマンドでティスク全体からファイルを検索したところ、アクセス権がないため読み出せないディレクトリに関するエラーメッセージが、大量に表示された。 工ラーメッセージを画面に表示しないようにして、検索結果をファイル result に保存するコマンドとして、適切なものを選択せよ。
選択肢
1. find / 'name *myproject*' > result
2. find / 'name *myproject*" > result 2>&1
3. find / 'name *myproject*" > result 2>/dev/null
4. find / 'name *mypr0Ject*" > result 2>/dev/zero
問題11
ファイル inputから、空行 (1文字もない改行だけの行) を取り除いて、ファイルoutputに書き出すコマンドとして、正しいものを選択せよ。
選択肢
1. grep '^$' input > output
2. grep -V '^$' input > output
3. grep -V '' input > output
4. grep '\0' input > output
問題12
作業中のファイルfruits.txtの内容は、次のとおりである。
Apple
Orange
Peach
Berry
Tomato
Grape
次のコマンドの実行結果として出力される果物の組み合わせとして、正しいものを選択せよ。
grep -E '[a-z]e' fruits.txt
選択肢
1. Apple, Orange, Peach, Berry, Grape
2. Apple, Orange, Grape
3. Peach, Grape
4. Peach, Berry, Tomato
問題13
カンマ区切りのCSVファイルsales.txtの内容は、以下のとおりである。
taro, 103, 432, 513
jiro, 23, 0, 234
sabu, 45, 232, 235
Shiro, 63, 934, 332
第3フィールドの数値が多い順に、 名前だけを表示するコマンドとして、 正しいものを選択せよ。
選択肢
1. sort -n -k 3 -t , sales.txt | cut -d -f 1
2. sort -r -r -k 3 -t , sales.txt | cut -d , -f 1
3. sort -r -k 3 -t , sales.txt | cut -d , -f 1
4. sort -d -r -k 3 -t , sales.txt | cut -d , -f 1
問題14
取引先から、ファイルー式を送るとのコメントとともに、project.tar.bz2 というファイルが送られてきた。
ファイルを展開するときに使用するコマンドとして、正しいものを選択せよ。
選択肢
1. tar tJf project.tar.bz2
2. tar tjf project.tar.bz2
3. tar xJf project.tar.bz2
4. tar xjf project.tar.bz2
問題15
ホームディレクトリをバックアップするために、xzコマンド形式で圧縮したtarアーカイプを作成したい。
なお、作業ディレクトリはホームディレクトリである。tarアーカイプを作成するコマンドとして、正しいものを選択せよ。
選択肢
1. tar czf /backups/taro-20200105.tar.xz .
2. tar cJf /backups/taro-20200105.tar.xz .
3. tar tJf /backups/taro-20200105.tar.xz .
4. tar xzf /backups/taro-20200105.tar.xz .
問題16
nanoエディタを使用してファイルを編集している。
編集作業がかなり進んだため、いったんファイルを保存するためのコマンドキーとして、正しいものを選択せよ。
選択肢
1. ^S (Control-S)
2. ^X (Control-X)
3. ^O (Control-O)
4. ^W (Control-W)
問題17
ⅵエデイタを使用してファイルを編集している。 文字列 Taroをすべて文字列 Hanakoに置換したい。
入力するキーの並びとして、正しいものを選択せよ。
選択肢
1. :%r/Taro/Hanako/
2. ^STaro^SHanako
3. :%s/Taro/Hanako/a
4. :%s/Taro/Hanako/g
問題18
ⅵエデイタを使用してファイルを編集している。重大な誤りに気づいたため、最初から編集をやり直したい。
変更を破棄してⅵ工デイタを終了するために、入力するキーの並びとして、正しいものを選択せよ。
選択肢
1. zz
2. :q
3. :q!
4. :wq
5. :Q
問題19
現在の作業ディレクトリに、backup.1~backup.10の10個のディレクトリを作成したい。
次のコマンドの下線部分に置く文字列の組み合わせとして、正しいものを選択せよ。
$ for i in 1 2 3 4 5 6 7 8 9 10
> ①______
> mkdir backup.$i
> ②______
選択肢
1. ① do、② od
2. ① loop、② end
3. ① do、② done
4. ① loop、② pool
5. ① begin、② end
問題20
シェルスクリプトで一連の作業を自動化するときに、あるコマンドが失敗した場合には後続のコマンドを実行せずに、
エラーを表示して停止したい。 条件を判断する部分の下線部に指定するシェル変数として、正しいものを選択せよ。
command
if [ ______ -ne 0 ] ; then
echo 'Error!. abort'
exit______
fi
1. $#
2. $@
3. $$
4. $?
問題21
Bシェルのスクリプトにおいて、与えられた引数の数によって条件を分岐したい。
次のスクリプトの下線部に置く文字の組み合わせとして、正しいものを選択せよ。
if [ $# -eq 0 ] ; then
echo 'NO argument'
①______ [ $# -eq 1 ] ; then
echo 'One argument'
②______
echo 'Multi arguments'
fi
選択肢
1. ① elif、② else
2 .① elseif、② else
3. ① else、② else
4. ① if、② fi
問題22
以下はシェルスクリプトの一部である。
変数Tにはファイル名がセットされている。
Tの示すファイルが、ファイル /backups/timestump よりも新しい場合のみ、ファイルをコピーしたい。
下線部に置く文字列として、正しいものを選択せよ。
if [ $T ______ /backups/timestump ] ; then
cp $T /backups
選択肢
1. -nt
2. -le
3. -a
4. -ge