シェルスクリプト(Bash)
shでやってたので、bashについて書く。
おそらく違う部分をメインで
1行目
#!/bin/bash
変数
declare -i a a=1 echo $a unset a
変数は基本的に文字列として扱われる
数値とする場合、declareで指定する必要がある
変数の開放はunset
変数宣言
declareを使って、明確に宣言できる
オプション | 型 | |
---|---|---|
a | 配列 | |
f | 変数を関数として扱う | |
F | 関数定義の表示を抑制し,関数名と属性のみを表示する.-Fを指定すると-fも指定したことになる | |
i | 整数。算術式を評価するようになる | |
r | 読み込み専用変数。値の代入、unsetできない | |
x | エクスポート | |
p | 属性と値を表示 |
二重括弧による計算
a=10 b=2 c=$(($a + $b)) echo "a + b = $c" c=$(($a - $b)) echo "a - b = $c" c=$(($a * $b)) echo "a * b = $c" c=$(($a / $b)) echo "a / b = $c"
配列
array[0]=1 echo ${array[0]} echo $array
0番目の要素に限り、ブラケットとインデックスが不要
変数の開放はunset
array=(1 2 3 4 5) echo ${array[*]} echo ${#array[@]}
まとめて代入、表示できる。
#を頭につけて@で個数を表示する
for
for(( i=1; i <=10; i++ )){ ((sum+=i)) } echo $sum
いつものfor文が使える。