Ну, я использовал это в прошлом, но на этот раз попытался урезать мои конфиги при настройке Postfix. Я не уверен, почему Ubuntu это не нужно, а Fedora нужно, но вот как я это исправил.
/etc/postfix/main.cf:
canonical_maps = hash:/etc/postfix/canonical
/etc/postfix/canonical:
root user@gmail.com
Перезагрузите Postfix и проверьте! -->postmap /etc/postfix/canonical && postfix reload
Не зная, является ли это упрощенной версией чего-то гораздо большего, я лишь изменил минимальное количество деталей в ваших исходных сценариях. Протестировано на GNU Bash.
#!/usr/bin/bash
readarray -t arr < test.txt
for i in "${arr[@]}"; do
if ping -c 1 -W 20 "$i" > /dev/null 2>&1; then
echo "$i is reachable"
sed -i "/$i/d" test.txt
else
echo "$i no ping"
fi
done
*Спасибо @steeldriver за его комментарий относительно флага -t
, добавленного к readarray
.