15.3 パラメータとオプション

コマンドにパラメータやオプションを与えると,コマンドの動作を変えることができます.

パラメータ

まず,パラメータを指定してコマンドの動作を変える例を見てみます.

前節で使った cal をもう一度使ってみましょう. cal はパラメータとして「年」をとることができます. 今回は 2012 というパラメータをつけて 2012 年すべてのカレンダーを出力させてみます.以下のように入力してください.

cal 2012return2

コマンド名 cal とパラメータ 2012 の間はspaceで区切って,最後にreturn2を押します. すると次のような出力が得られます.

cal 2012return2
2012

1月 2月 3月 日 月 火 水 木 金 土 日 月 火 水 木 金 土 日 月 火 水 木 金 土 1 2 3 4 5 6 7 1 2 3 4 1 2 3 8 9 10 11 12 13 14 5 6 7 8 9 10 11 4 5 6 7 8 9 10 15 16 17 18 19 20 21 12 13 14 15 16 17 18 11 12 13 14 15 16 17 22 23 24 25 26 27 28 19 20 21 22 23 24 25 18 19 20 21 22 23 24 29 30 31 26 27 28 29 25 26 27 28 29 30 31 … (以下略) …

うまく2012年すべての月が表示されたでしょうか? お望みならば,1723 年とか 2312 年などのカレンダーを表示させることもできます.このようにコマンドの後ろにスペースを空けてパラメータを入力することによって,コマンドに値を渡すことができるのです.ちなみに,前節で cal とだけ打ったときは今月のカレンダーが出ました.これはパラメータを省略したときは,cal コマンドが今月のカレンダーを出すようになっているからです.

exercise1752年9月の日曜日の数は(1) 回です.(ヒント:コマンドラインにおいて,
cal 9 1752return2
と入力して調べてみましょう.)

オプション

次に,オプションを指定してコマンドの動作を変える例を見てみます.以下のように入力してみて下さい.

cal -yreturn2

今年のすべての月が表示されたでしょうか?

cal というコマンドは -y というオプションをつけることで,1 年分のカレンダーを表示できます.このようにハイフン “-” のあとに文字を指定することにより, コマンドにオプションをつけることができます.このオプションによって,コマンドの動作は色々変わります.

複数のオプションを同時に指定

複数のオプションを同時に指定することもできます.たとえば次の例では,cal コマンドに -y オプションと -j オプションを同時に指定しています.-j オプションは,ある日付が 1 月 1 日から数えて何日目であるかを表示するオプションです.

cal -yjreturn2
1月 2月 日 月 火 水 木 金 土 日 月 火 水 木 金 土 1 2 3 4 5 6 7 32 33 34 35 8 9 10 11 12 13 14 36 37 38 39 40 41 42 15 16 17 18 19 20 21 43 44 45 46 47 48 49 22 23 24 25 26 27 28 50 51 52 53 54 55 56 29 30 31 57 58 59 60

3月 4月 日 月 火 水 木 金 土 日 月 火 水 木 金 土 61 62 63 92 93 94 95 96 97 98 64 65 66 67 68 69 70 99 100 101 102 103 104 105 71 72 73 74 75 76 77 106 107 108 109 110 111 112 78 79 80 81 82 83 84 113 114 115 116 117 118 119 85 86 87 88 89 90 91 120 121 … (以下略) …

同時に複数のオプションを指定するには,-y -j とスペースで区切って並べてもよいですし, -yj のように一度に書いてもよいです.オプションにおいても,コマンド名と同様,大文字と小文字は区別されます.

オプションとパラメータを両方与える

コマンドはオプションとパラメータを同時にとることもできます.その場合は,「コマンド名 + オプション + パラメータ」の順番に入力をします.たとえば

cal -j 2012return2

と入力すると,2012 年のカレンダーが,日付が「1 月 1 日から数えて何日目であるか」という形で表示されるはずです.

まだまだほかにも…

コマンドにはたくさんのオプションがあります.各コマンドごとに,つけられるオプションの種類も違えば,そのオプションによる動作も違います.ここで示したのはあくまで一般的な例です.コマンドにどのようなオプションをつけることが可能かを調べるには,hwb15.6 オンラインマニュアル で説明するコマンドのオンラインマニュアルを参照してください.