条件式
ファイルのプロパティ
| -e ファイル | ファイルが存在しているとき真 |
| -z ファイル | ファイルが空のとき真 |
| -b ファイル | ファイルがブロック特殊ファイルのとき真 |
| -c ファイル | ファイルがキャラクタ特殊ファイルのとき真 |
| -d ファイル | ファイルがディレクトリのとき真 |
| -f ファイル | ファイルがノーマルファイルのとき真 |
| -r ファイル | ファイルが読み出し可能のとき真 |
| -s ファイル | ファイルの長さが1バイト以上あるとき真 |
| -w ファイル | ファイルが書き込み可能のとき真 |
| -x ファイル | ファイルが実行可能のとき真 |
例:hogeディレクトリが存在するか確認する
if [ -d hoge ]
then
echo "${hoge} is directory"
fi
配列メモ
for文で要素全てを含ませる
for X in ${array[@]}
要素数を返す
${#array[@]}
シェル変数パターンマッチ
${variable#pattern}
variable の値の最初の部分とpatternが一致したもっとも短く一致する部分を削除
${variable##pattern}
variable の値の最初の部分とpatternが一致したもっとも長く一致する部分を削除
${variable%pattern}
variable の値の終りの部分とpatternが一致したもっとも短く一致する部分を削除
${variable%%pattern}
variable の値の終りの部分とpatternが一致したもっとも長く一致する部分を削除
cutコマンド
ファイルが
hoge:200 piyo:500 hogera:300
となっているとき
数字の部分だけ配列に入れたいときは
array=$(cut -f2 -d: ファイル)
とする
デリミタにスペースを使うには
-d' '
を使う
#ファイルテスト