
с этим сценарием
putty -ssh user@host -i C:\Users\TheUser\.ssh\id_rsa.ppk -m C:\users\TheUser\desktop\script.txt
exit
Я попытался автоматизировать отключение сети после резервного копирования на удаленном NAS-устройстве Synology, работающем на Linux.
skript.txt
выглядит следующим образом sh /home/linuxserver/Dokumente/shell.sh & disown; exit
, а скрипт на linuxserver выглядит так:
#!/bin/bash
sleep 10s
sudo ip link set eth0 down
моя проблема в том, что скрипт делает то, для чего он создан, но терминал putty не закрыт. Если я сам копирую содержимое script.txt
в терминал putty и запускаю его, он работает как задумано (с закрытием терминала).
правка: похоже, что putty игнорирует каждую команду disown скрипта. даже если я создаю скрипт disown скрипта. nohup
, & disown
, и & disown -h
не работает. Я даже пытался запустить putty, создать сеанс и сохранить его, но эти команды вообще игнорируются.
edit2: теперь я попробовал с другой командой в skript.txt теперь это выглядит так
(sleep 10; sudo ip link set eth0 down ) &
exit
Putty все еще не закрывается после запуска скрипта, поэтому я попробовал другой skript.txt
(sleep 10; echo 1000 ) &
exit
Я изменил время сна, и каждый раз Putty ждал, пока не истечет время. Поэтому у меня вопрос: как мне запустить свой скрипт и позволить ему закрыть окно Putty, не закрывая окно вручную?