もういい加減、pythonなりperlなりつかってもいいルールにしてくれよ。
linuxだよ、linux。
まだbash縛りかーいと。ローカル変数ちゃんと定義してないやつ多いし、
exitで抜けれてないやつとかもあるし、もう嫌い。
マイグレーション案件とかだと、もう吐きそうになるほどの
シェルスクリプトをあーでもないこーでもないしなきゃならんと思うけど、
こんときにクソみたいなコードに出会った場合、
直したい気持ちと、ガラス細工のようにバグも利用して偶然動いていたらどうしよう、、という
2つの気持ちが揺れ動きませんか、私だけですか、そうですか。
んで、タイトルの話なんだけど、pythonとかだとsetでokな内容も
配列ぐらいしかないbashでは大変。
元のソースはなんか、1行ずつgrepシテマス・・・けど・・・(;´Д`)< if の条件句でいいやーん・・。
で、配列.containsとか in 配列 とか出来ねーのか調べてみたが、
caseでど根性でやるパターン以外は、シンプルにループして探すのを書くしかない模様。
これが一番シンプルかなー。
containsElement () {
local e
for e in "${@:2}"; do [[ "$e" == "$1" ]] && return 0; done
return 1
}
local e
for e in "${@:2}"; do [[ "$e" == "$1" ]] && return 0; done
return 1
}


