FC2ブログ

blogaomu2.1はこの度、http://blogaomu.comに引っ越しました。最新の更新はblogaomu.comにて行なっておりますので、ブックマーク・RSS等の設定をお願い致します。

[csh]シェルスクリプトのメモ書き その2

というわけで前回の[csh]シェルスクリプトのコマンド等メモ書きの続きです。コマンドライン引数、条件分岐、繰り返し、変数の式展開についてメモっていきます。

コマンドライン引数

$argv[index]でコマンドライン引数を参照できます。indexは1から始まり、コマンドライン引数を指定した順番に関連しています。また、$#argvでコマンドライン引数の数を取得します。

echoargv.csh
#!/bin/csh
# コマンドライン引数を取得する
set i = $argv[1]
echo $i
echo

set i = $argv[2]
echo $i
echo

echo $#argv

実行してみます。

$ ./echoargv.csh foo bar
foo

bar

2

条件分岐

if文とswich文が使用可能です。構文を以下に示します。

if (条件) then
    コマンド...
[else if (条件2) then
    コマンド...]
else
    コマンド...
endif
switch (比較する文字列)
case 値1:
    コマンド...
breaksw
case 値2:
    コマンド...
breaksw
...
default
    コマンド...
breaksw
endsw

繰り返し

whileとforeachが使用可能です。この2つの構文の中ではbreakとcontinueが使えます。

while (式)
    コマンド...
end
foreach 変数 (リスト)
    コマンド...
end

変数の式展開

前回のエントリーで変数について書きましたが、そこで触れてなかった式展開の話。${val}のように使用すると""で囲まれた文字列の中でも変数を参照することができます。ただし、''で囲むと式展開されませんので注意。

# 式展開
set str1 = "foo"
echo "${str1}とbar"     # => fooとbar
echo '${str1}とbar'     # => ${str1}とbar

ひとまず前回と今回で基本的なところは押さえてあると思います。そういえばパイプだとかリダイレクトとかは書いてなかったですね。気が向いたらメモしようと思います。

スポンサーサイト



シェアはこちらからどうぞ

このエントリーをはてなブックマークに追加

コメントの投稿

非公開コメント

プロフィール

TAKAyuki_atkwsk

お知らせ
最新記事
最新記事のRSSフィード

最新コメント
最新トラックバック
カテゴリ
タグクラウド
月別アーカイブ
ブクログ
携帯百景