2015-04-20 43 views
0

我試圖執行下面的命令。未找到事件錯誤

ssh node1 "nohup sleep 66 &; echo $!" 

但我得到的錯誤:

-bash: !": event not found 
+0

我需要存儲的進程id檢查狀態後 – Ravikanth

回答

0
ssh node1 'Pgrep -f sleep 66' 

解決問題

+1

請擴展您的答案:爲什麼你的答案解決了這個問題? –

+0

將上述命令的值存儲在將存儲睡眠66的進程ID的變量中。我們可以隨時使用變量來檢查進程ID狀態。問題的隱藏是將遠程機器的進程ID存儲在變量中。所以我們可以使用:1)ssh node1'nohup sleep 66&'2)x(variable)='ssh node1'pgrep -f sleep 66' – Ravikanth

2

您應該使用單引號,以防止$!的解釋:

ssh node1 'nohup sleep 66 &; echo $!' 

它還看起來像;是沒有用的這裏。這似乎工作:

ssh node1 'nohup sleep 66 & echo $!' 
+0

仍然沒有工作 – Ravikanth

+0

慶典:-c:行0:近意外的語法錯誤令牌';' bash:-c:第0行:'nohup sleep 66&; echo $!' – Ravikanth

+0

不能使用單引號 – Ravikanth