SSH + Shell scritp 請教 - Linux

Table of Contents

小弟想在某系統下用ssh遠端kill掉某一個process

但是因為變數的問題一直搞不定

主 sh 檔 ex.wii.sh

case $1 in
"abc")
ssh [email protected] "'cat /root/abc.txt'"
;;

"abd")
ssh [email protected] "'cat /root/abd.txt'"
;;

"abe")
kill -9 $(ps aux |grep 'node' |awk '{print $2}')
;;

esac

使用 ./wii.sh abc 執行後
會用ssh到192.168.1.2的主機執行 abc.txt 內的指令

abc.txt 的內容是
kill -9 $(ps aux |grep 'node' |awk '{print $2}')
搜尋出 node 程式的 pid 然後 kill 掉

現在想請教是有沒有辦法把兩支檔案合在一起
測試過下面的方法,但是變數上面就會有問題
ssh [email protected] "'kill -9 $(ps aux |grep 'node' |awk '{print $2}')'"

另外在本機端部分也因為變數的關係導致 pid 搜尋到錯誤的

請問有辦法解決嗎?感謝


有版友教我使用 pidof 找出 node 的 pic

但是我忘記補充主機內有多支 node 程式在執行
ps aux 列出來後像下面這樣
node abc.js
node abd.js

用pidof的話就沒辦法只單獨kill掉其中一個
而我的需求是只單獨kill掉某支node process 而已

--

All Comments

Skylar DavisLinda avatarSkylar DavisLinda2013-05-09
哪一隻?