다음을 수행해야 하는 다른 프로세스에 bash 명령을 전달해야 합니다.
- SSH를 통해 컴퓨터에 접속합니다. 비밀번호 프롬프트가 필요하지 않습니다.
- 일부 환경 변수 설정: 소스 경로/to/script.sh
- (2)가 필요한 GUI 프로그램을 시작합니다.
지금까지 나는 다음을 가지고 있습니다 :
ssh -n -f pc-name -XYC nohup source folder/setup_thing.sh; program
나의 노력으로 나는 다음을 얻습니다:
nohup: failed to run command `source': No such file or directory
bash: program: command not found
비슷한 수정을 시도했습니다.이것그리고이것그리고 다른 몇 가지 유사한 답변. 이 모든 것을 bash 파일에 넣은 다음 ssh mySever 'nohup bash myscript.sh'
.
위 명령이 성공적으로 실행되도록 어떻게 리팩터링할 수 있나요?
답변1
나는 노력할 것이다
ssh -n -f pc-name -XYC ". folder/setup_thing.sh; nohup program &"
. folder/setup_thing.sh
변수는 setup_thing.sh에서 초기화됩니다.nohup program &
백그룹에서 프로그램을 실행하고 ssh에서 돌아옵니다(nohup으로 인해)."
답변2
나는 이것을 시도했습니다 :
nohup ssh -n -f pc-name -XYC "source folder/setup_thing.sh; program"
효과가 있었습니다. 나에게 말하긴 하지만
nohup: ignoring input and redirecting stderr to stdout