使用循環比較兩個檔案以查看兩個檔案中不存在的字串

使用循環比較兩個檔案以查看兩個檔案中不存在的字串
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

我從評論中摘取了你的資訊:

文件「完整」是每行一個 IP 位址。 .cfg 檔案除 IP 位址外還包含各種字母文字。

我需要迭代“完整”文件以查看其中的 IP(每行一個)是否也在 .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

根據您的需求進行調整(我不完全理解)

相關內容