У меня ниже скрипт bash. Он запускает команду docker run
внутри цикла while, который считывает из текстового файла строку за строкой.
#!/bin/sh -eu
while IFS= read -r url; do
docker run --rm -it alpine ls
done < repo_list.txt
Я получаю эту ошибку the input device is not a TTY
при выполнении вышеуказанного скрипта. Однако он отлично работает, если я удалю while loop
следующим образом:
#!/bin/sh -eu
docker run --rm -it alpine ls
Я знаю, что могу это исправить, удалив параметр -it
из команды docker. Но я хотел бы знать, почему while loop
вызывает эту ошибку. Можно ли как-то это исправить, не меняя команду docker?