nohup
시간이 오래 걸리지만 실행하려면 비밀번호가 필요하기 때문에 스크립트를 실행하고 싶습니다 . 를 어떻게 사용할 수 있습니까 nohup
? 예를 들어 스크립트를 대화형으로 실행하려면 먼저 스크립트를 실행 php hat
하고 키나 비밀번호를 묻는 메시지가 나타나면 123456
.
나는 nohup php hat & password
성공하지 못했습니다(예: 123).
답변1
run 명령을 사용하면 nohup
리디렉션 stdin
됩니다 /dev/null
. 따라서 nohup
비밀번호를 수동으로 사용하거나 입력할 수 없습니다 .
사용하는 프로그램에 따라 리디렉션을 사용하여 비밀번호를 입력할 수 있습니다.
$ nohup bash -c 'read; echo $REPLY' <<<'hello'
$ tail -1 nohup.out
hello
따라서 비밀번호를 파일(예: password.txt
)에 저장하고 gpg
비밀번호로 보호된 개인 키 password.txt.gpg
와 같은 것을 사용하여 암호화한 후(를 얻기 위해) 다음을 수행할 수 있습니다.
gpg -d password.txt.gpg | nohup php hat
또는 비슷한 것을 사용할 수도 있습니다 screen
.
먼저 screen
세션을 시작합니다(이 명령은 실제로 이름이 지정된 세션을 시작 my-php-script-session
하거나 이미 포그라운드에서 실행 중인 세션을 포그라운드로 가져옵니다).
screen -D -RR -S my-php-script-session
그런 다음 열린 셸에서 정상적으로 명령을 실행합니다.
php hat
비밀번호를 입력한 다음 세션을 분리하세요 screen
: Ctrla, d.
첫 번째 명령을 다시 실행하여 다시 연결할 수 있습니다 screen
.