Многие интернет-провайдеры блокируют порты 25 и 80 для всех своих учетных записей. Я использую услугу веб-хостинга, которая включает службу электронной почты. они предоставляют мне smtp-сервер на нестандартном порту для исходящей электронной почты. Он работает везде. У вас может быть доступ к чему-то подобному. Подумайте, какие услуги у вас уже есть, и исследуйте их.
Вы хотите запустить две вещи параллельно.
Прочитать входной сигнал ожидания 5 секунд (скажем) Обновить индикатор выполнения (показывая, что 5 секунд заканчиваются)Для этого , не помещайте команду read внутри цикла.
Вместо этого сделайте что-то вроде этого:
for i in {1..10}; do sleep 0.5s; echo ${i}0; done | zenity --progress --auto-close --text="waiting for input...5sec" 2>/dev/null &
read -t 5 asd && kill $!
(поместите эти две строки в файл (скажем, abc. sh) и запустите его bash abc.sh)
Объяснение:
Первая команда (для обновления индикатора выполнения) отправляется на задний план с parallel. . Если команда чтения завершена, kill $! закроет индикатор выполнения.
Примечание: Checkout GNU Parallel. Это поможет вам сделать больше материалов параллельно.