第 1 回 - フィルタ,シェルスクリプトの基礎(1)

[10/06, 2009 H.Aman]
67x27(1669bytes)   67x27(1669bytes) 【例題 3】

課題 2-1

例題 2 のスクリプトを改良し,表示行数を次のように指定できるようにしなさい:
     bash ex2.sh foo.c 5
この場合,foo.c の先頭 5 行と末尾 5 行を表示する.

課題 2-2

成績表 score.csv (カンマ区切り形式)の中から「科目 n」の得点だけに着目し, その最高点と最低点を出力するスクリプトを作りなさい.
ただし,成績表の内容は,1 人分の成績が
     科目1の成績,科目2の成績,科目3の成績,...,科目10の成績
という具合いにカンマで区切られて 1 行で表され, この繰り返しで構成されている.

(実行例)

     $ bash ex2-2.sh score.csv 3
     === 科目 3 ===
     最高点 = 100
     最低点 = 1

※ カンマ区切りのデータから特定の列だけを切り出すには cut コマンドを使うとよい.

※ echo コマンドでの出力の後,改行したくない場合は -n オプションを付けるとよい
(例)echo -n "aaa"       ← aaa を出力するが,改行はされない

※ 実行時に "cannot execute binary file” というエラーが出てしまう場合は シェルスクリプトの一行目に空行を入れるとよい.