Вы можете перенаправить ввод / вывод на /dev/tty
. Сначала вы захотите проверить, доступен ли tty с помощью isatty
методов, основанных на , когда вы делаете такие вещи.
Например, создайте ./test.sh
как
exec </dev/tty >/dev/tty
read -p "Enter text:" VALUE
echo "got: $VALUE"
А потом
git submodule foreach ../test.sh
Будет делать правильные вещи, например, в моем тестировании
sehe@meerkat:~/custom/MONO$ git submodule foreach ../test.sh
Entering 'cecil'
Enter text:a
got: a
Entering 'glib'
Enter text:b
got: b
Entering 'gtk-sharp'
Enter text:c
got: c
...