Shell
ssh 後執行多個命令
我需要將 bash 命令傳遞給另一個需要執行以下操作的程序:
- ssh 到電腦。這不需要密碼提示。
- 設置一些環境變數:source path/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'
.如何重組上述命令以使其成功執行?
我會嘗試
ssh -n -f pc-name -XYC ". folder/setup_thing.sh; nohup program &"
. folder/setup_thing.sh
將從 setup_thing.sh 初始化變數。nohup program &
將在後台執行程序,並從 ssh 返回(由於 nohup)”
我試過這個:
nohup ssh -n -f pc-name -XYC "source folder/setup_thing.sh; program"
它奏效了。雖然它確實告訴我
nohup: ignoring input and redirecting stderr to stdout