Lesson9, 10 課題

以下の問いの答えをサブジェクト名"lesson9-10 kadai"として、honda@is.kochi-u.ac.jp あてにe-mailで送信してください。
締め切り 11/30(木)17:00 (1週間延ばしています)

配点
1  11 各4点
2  2  各4点
3  9  各4点
4      6点
5      6点
(lesson9 相当)
1.  bashを使って、以下の作業を行ってください。この際実行したコマンドとその結果を答えてください。なお、変数の設定が必要な 場合も、 環境ファイルは使用せず、端末からコマンドを入力して設定していくものとします。
    1. 現在のシェル変数を表示する。
    2. 新しいシェル変数 weather を定義し、その値を cloudy とする。
    3. 現在のシェル変数を確認する。
    4. シェル変数 weather を削除する。
    5. 現在のシェル変数を確認する。
    6. シェル変数の中で、PS1 は何を設定する変数か。また、現在の値はどうなっているか答えよ。
    7. 現在使用しているシェルのプロンプトの文字を  MyPrompt$:   に変更する。(プロンプトがかわったことを確認した結果も答えに含めてください)
    8. PS1の値を最初の値に戻す。
    9. 新しいシェル変数 friend を定義し、その値を tomo として、現在 の friend の値を次のシェルに引き継ぐ
    10. 新しい bash のシェルを起動して、シェル変数 friend の値が tomo であることを確認する。
    11. 新しい bash のシェルを終了する
2.   環境ファイルに関して下記の問いに答えなさい。
  1. bashの環境ファイルの名前は何か。またその内容の先頭3行を表示しなさい(ヒント head)。
  2. シェルが起動する度に(ターミナルをあける度に)、現在の日付と時刻を表示し、その後 "Hello. Nice to see you again. " というメッセージを表示するにはどうすればよいか。実際に行って動作確認しなさい。実行結果もレポートに入れること。なお、課題終了後は、変更箇所は元 に戻してくだ さい。
    2.2のヒント:
    コマンド echo "メッセージ"("は半角英数字)で画面にメッセージを表示することができる。
    echo "Hello!"と端末から入力してみよう。
  起動時に実行させたいコマンドは環境ファイルの末尾に入れると起動の度に実行される。。


(lesson10相当)
3.  以下の作業を ~/d10で行うものとします。実施前にaaa, q1,q12,q2,friendsというファイルがあることを確認してください。ない場合はコピー, touchなどで作成してください。また、不要なものがある場合は消してから実施してください。
以下の操作を行い、その際に入力したコマンドと結果(出力)を答えなさい
(1) q で始まる名前のファイルを全て表示する。
(2) q で始まり、長さが2文字で2文字目が数字の名前をもつファイルを全て表示する。
(3) 2文字目が数字で3文字以上の名前を持つファイルを一覧表示する。
(4) 2文字の名前をもつファイルを 一覧表示する。
(5) qで始まる名前のファイルをすべて削除する。
(6) /usrディレクトリの下にある wordsという 名前のファイルを探してパスを表示する(ヒント find)
(7)  (6) で見つけたファイルには英語の単語が入っている。以下の単語があるかどうか調べよ(ヒント grep)
         judo

         kendo
         aikido
         sado
         kado
         busido
(8) このファイルに入ってい る単語で"ate”という文字列を含む単語の個数を答えよ。
  (ヒント、パイプ、wc)

(9) このファイルに入ってい る 40565 番目の単語一つだけを1行のコマンドで簡単に表示せよ。(ヒント、パイプ、head 、 tail )


4.  下記のコマンドの動作の違いを説明せよ。また、このうち、自然に終了して、プロンプト がかえってくるのはどれか答えよ。(実行して確かめてもよいがなぜそうなるのか理由を理解する事。プロンプトがかえってこない場合 CNTL+Dを入力してください。)
 
(a) date     |    cat > bbb
(b) date    ;    cat > bbb
(c) date     &&     cat > bbb
(d) date     ||     cat > bbb   

5.  下記の通り目覚まし時計のような表示をさせることを考える。ここで、数字の表示はコマンド実行の10秒後に始まり、各行は1秒間隔で表示されるものとする。表示の際に音声でもfive, four...と発話させる (macでは say コマンド (使用法 say 文字列(英語)で発話させられる。詳しくは man say で) 。また、このプロセスはバックグラウンドで動き、実行中、ほかのコマンドを実行 できるものとする。"1行の"連結コマンドとして実行する方法を答えよ。(ヒント:Lesson 10 の例題)。

(コマンド入力  ここをこたえる)
(......10 秒経過後)
5

4
3................
2................
1.................
Wake up!