入門UNIXシェルプログラミング
入門UNIXシェルプログラミングを読む
前半は知っている内容なのでさらっと飛ばす
制御構文
シェルでの;は単純にコマンドを1行に並べるだけ
if文で必ず使わなきゃいけないものだと思っていた(1行に並べるには使わなきゃいけないのだが)
```
if [ -f file ]
then
echo "hogehoge"
fi
```
```
if [ -f file ] ; then
echo "hogehoge"
fi
```
これ気付いたけど,セミコロンないとtestコマンドの引数として解釈されるからか..
if [ -f file ] then
test(-f, file, ], then)
なので
if [ -f file ]; then
もだめ
test(-f, file, ];, then)
と解釈されるので
シェル変数
基本は
```
$ VARIABLE=value
```
で代入できるが以下のように変数を代入(利用?)することもできる
```
${VARIABLE:=value}
${VARIABLE:-value}
${VARIABLE:?value}
${VARIABLE:+value}
```
実は:なしの書き方もあり,パターンとして8通りある.
ページ的には代入の項目になるけど変数の利用という見方もできるな.
うーん.使うのか?こういう書き方がある以上便利なのだろうけど.
コマンドに渡される引数の上限は9.
正確には位置パラメタにセットされる値.
それ以上の引数を処理するにはshiftコマンドを使うひつようがある.
shiftコマンド?
コメント
コメントを投稿