i=$(cat /etc/icinga/devices.d/xlcdw/full)
if IP in grep -q $i /etc/icinga/devices.d/xlcdw/xlcdw-endpoints.cfg;
echo "Already configured"
else
echo $IP
fi
.cfgファイルで設定したホストが「full」というファイルに存在することを確認しようとしています。もちろん、上記のコードは実行さえありません。私は彼らのIPアドレスを探しています。
ベストアンサー1
コメントからあなたの情報を取得しました。
ファイルは1行に1つのIPアドレスで「完全」になります。 .cfgファイルには、IPアドレスに加えて、さまざまなアルファベットテキストが含まれています。
そして
「完全」ファイルを繰り返して、そのファイルのIP(1行に1つ)が.cfgファイルにもあることを確認する必要があります。
したがって、繰り返したいのですが、スクリプトはそうではありません。
forループを試してください:
for IP in $(cat /etc/icinga/devices.d/xlcdw/full); do
if [[ `grep -c $IP /etc/icinga/devices.d/xlcdw/xlcdw-endpoints.cfg` > 0 ]]; then
echo $IP already configured
else
echo $IP missing
fi
done
あなたのニーズに合わせて調整してください(完全に理解していません)