Как часть скрипта, у меня есть
gnome-terminal -e "process involving another user"
После того, как я выполнил эту строку, мне нужно в терминале 3 раза ввести пароль этого пользователя. Интересно, как мне это автоматизировать, то есть без ввода пароля. Что-то вроде
echo "password" (3 times) | gnome-terminal -e "process involving another user"
Спасибо @ rao_555, но, боюсь, все не так просто. Я использую команду
gnome-terminal --working-directory="/var/singlecellserver/single-cell-server" \
-e "sage -python trusted_db.py -w 50 --untrusted-account untrusted@localhost" &
Итак, я не хочу передавать аргументы в sage -python ...
. После запуска sage -python ...
мне нужно 3 раза дать ненадежный пароль. Я пытался
gnome-terminal --working-directory="/var/singlecellserver/single-cell-server" \
-x sage -python trusted_db.py -w 50 --untrusted-account untrusted@localhost $1 $1 $1 &
, но безуспешно.
Проблема была связана с sudo
и ssh
. Поскольку необходимо запустить процесс как su
, доступ через ssh
к ненадежной учетной записи требует также клавиш ssh
в корневой папке.
создайте сценарий оболочки и поместите в него свои команды, передайте пароль только один раз в качестве аргумента, а внутри сценария используйте $ 1, чтобы получить ваш пароль,
используйте $ 1, чтобы получить свой пароль, где бы вы ни находились внутри вашего сценарий.