パラメータのすべての値を識別する方法 -var_general存在するvar_get
例えば
var_general="sdb sdc sdd sde sdf sdg"
var_get="sdb sdc sdd sde sdf sdg sdh sdi"
この例では定常状態になります。
他の例
var_general="sdb sdj sdd sde sdf sdg"
var_get="sdb sdc sdd sde sdf sdg sdh sdi"
ステータスは失敗としてマークされます(sdjがvar_getにないため)。
ベストアンサー1
bash
+comm
+tr
解決策:
var_general="sdb sdc sdd sde sdf sdg"
var_get="sdb sdc sdd sde sdf sdg sdh sdi"
if [[ $(comm -23 <(tr ' ' '\n' <<<"$var_general" | sort) <(tr ' ' '\n' <<<"$var_get" | sort)) ]]; then
echo "status: Fail"
else
echo "status: Ok"
fi
tr ' ' '\n' <<<"$var_general"
- スペースを改行/改行に変換comm -23 FILE1 FILE2
- ファイルを比較し、一意の行を印刷しますFILE1
。ファイルにFILE1
一意のエントリが含まれていない場合は、ファイルのサブセットとして許可されます。FILE2