' P '

whatever I will forget

shell いつも忘れる文法たち

よし、簡単な自動化shell作るぞ!って時にいっっっっっっっつも忘れるのでメモ

おまじない

ファイルの最初に書く。

#!/bin/bash

自身のファイル名表示

CMDNAME=`basename $0`
echo "usage: $CMDNAME 123"

変数に値を代入

=の前後に空白を入れたらダメです

var="aaa"
num=1

if文

fiをよく忘れます。

if [ $var -eq 1 ]; then
  :
elif [ $var -eq 2 ]; then
  :
else
  :
fi

何もしない

if文分岐の正のときに。 :

数値の比較

等しい場合 -eq 異なる場合 -ne

文字列の比較

等しい場合 = 異なる場合 !=

引数の個数チェック

if [ $# -eq 3 ]; then
  :
fi

引数のブランクチェック(文字列の場合)

if [ -z "$1" ]; then
  :
fi

引数の中身チェック(文字列の場合)

if [ "$1" = "a" ]; then
  :
fi

boolean型変数

flagison=true
 
if $flagison; then
  :
fi