Это мой скрипт test.sh
if ssh myhost true; then
echo 1
fi
echo 2
п.с. Я установил ключ ssh для myhost, поэтому он не будет спрашивать пароль.
Если я запусту его через bash, он выведет две строки
$ bash test.sh
1
2
Однако, если я перенаправлю скрипт на стандартный bash, он выведет только одну строку
$ bash < test.sh
1
Почему Баш ведет себя по-другому? Это ошибка bash или магическая функция?
Я пробовал Bash 4.3 и 4.4.
п.с. Если я заменю ssh myhost true
на true
, скрипт всегда выведет две строки.