shell script 使用 ssh 下指令回不來 - Linux

Table of Contents

不知道標題該怎麼下

我在 A 機器寫了一個 shell script 要去 B 機器執行 kill node 然後再執行

A 機器上寫的是

ssh 192.168.0.5 "cd /home/node/;./nd.sh $2 &"

B 機器上的 nd.sh

#!/bin/bash
cd /home/node/
/usr/local/bin/node $1/node.js >/dev/null &


但是在 A 機器上執行 shell script 後會卡在這一句,想請教有正確的寫法嗎?

--

All Comments

Bennie avatarBennie2013-09-02
試試看改成ssh -f 192.168.0.5 cd /home/node/;
Wallis avatarWallis2013-09-07
沒有-f我印象中會等到你的command跑完你的畫面才會跳
回到你原來的位置(不然就要等command執行完)
Belly avatarBelly2013-09-10
-f 只是把 ssh 跑在 A 的背景.
Harry avatarHarry2013-09-14
試試看 ./nd.sh $2 >/dev/null 2>&1 &" 看看.
Jack avatarJack2013-09-16
因為輸出有 stdout 和 stderr, 你只把 stdout 丟掉,
Donna avatarDonna2013-09-19
還是把 stderr 留給 ssh 接收, 所以 ssh 會卡在那.
Ingrid avatarIngrid2013-09-20
瞭解了、感謝樓上^^