cshプログラミング入門(SuperText 上巻 第39章 p.779)

シェルスクリプト

  • menu.sh

    pre>

    #!/usr/local/bin/tcsh

while(1)

	echo "---------------"
	echo "メニュー"
	echo " 1. 日付"
	echo " 2. カレンダー"
	echo " 0. 終了"
	echo -n " command? > "
	set request=$<
	switch( $request )
	    case 1:
		date
		breaksw
	    case 2:
		cal
		breaksw
	    case 0:
	    	echo menu fished.
		exit
	    default:
		echo "Wrong number!"
		breaksw
	endsw

end

/pre>

  • mkhtml.sh

    pre>

    #!/usr/local/bin/tcsh

    # カレントディレクトリ上にあるPNGファイルの一覧をHTMLファイルに書き出す set htmlfile=test.html

echo "<html>" > $htmlfile echo "<head>" >> $htmlfile echo "<title>PNG file list on $cwd</title>" >> $htmlfile echo "<body>" >> $htmlfile

foreach num (*.png)

	echo -n "<img src=$num>" >> $htmlfile
	echo "<caption>$num</caption>" >> $htmlfile
	echo "<hr>" >> $htmlfile

end

echo "</body>" >> $htmlfile echo "</html>" >> $htmlfile

/pre>

演習

  • menu に「自分のプロセスを表示するメニュー」と「指定したプロセスIDのプロセスを殺すメニュー」を追加せよ.また,シェルスクリプトの各行にコメント行を入れ,プログラムを説明せよ.
    • ヒント1: 「自分のプロセスを表示する」コマンドは ps
    • ヒント2: 「プロセスを殺す」コマンドは kill
    • ヒント3: ターミナルからの入力を変数に代入するのは「set PROCESSID=$<」とする.
  • 提出先:koji@ie.u-ryukyu.ac.jpに各自作成したシェルスクリプトを送る.
    • 注意:メール内にテキストで貼付けること.シェルスクリプトファイルの添付は禁止!
  • メールのサブジェクト:[Report 7-2] 04570XX
  • 締め切り:7月8日


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-06-20 (木) 14:45:27 (2283d)