На вопрос «Возможно ли» есть ответ «да».
Код для anyconnect vpn, вероятно, читает / dev / tty, как объяснено в комментариях Chepner ea. В качестве забавного упражнения попробуйте этосценарий:
#! /bin/sh
read -p "STDIN> " a
read -p "TERMINAL> " b < /dev/tty
read -p "STDIN> " c
echo "Read $a and $c from stdio and $b from the terminal"
и, например, ls / | bash this_script.sh
.
Однако, если вы хотите использовать Cisco Autoconnect без паролей, вам следует изучить функцию обнаружения «Всегда включен с доверенной сетью» ипользовательские сертификаты.
Запись в /dev/tty
в надежде, что он будет подхвачен скриптом, не работает:
ljm@verlaine[tmp]$ ls | bash test.sh &
[3] 10558
ljm@verlaine[tmp]$ echo 'plop' > /dev/tty
plop
[3]+ Stopped ls | bash test.sh
ljm@verlaine[tmp]$ fg
ls | bash test.sh
(a loose enter is given)
Read a_file and b_file from stdio and from the terminal