看板 Linux 關於我們 聯絡資訊
我想要利用ssh在遠端跑一個程式, 並且取得他結束執行時的return code(這邊我用個程式會回傳-1), 我試著這樣子寫: a=`ssh user@host ~/program` 結果a出來是空的,用ssh -v檢查顯示 debug1: Exit status 255 但是我輸入 echo $? 後結果卻是0 另外我也試了像這樣的指令: a=`ssh user@host "~/program || echo fail"` 結果a還是空的,但是fail有印出來 a=$()和a=``我都有測試過,結果都和上面的一樣, 想問問看有沒有辦法用ssh遠端執行的方法取得程式結束的回傳值? (我的shell是用bash, 發行版是ubuntu 12.04) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.250.222.223
stimim:a=`cmd ...` 是把 cmd ... 的 stdout 結果存到 a 吧? 11/09 11:49
prismwu:嗯 但是我的a沒有東西 fail直接印出來 11/09 13:33
lantw44:echo $? 出來是 0 應該是因為「存到 a」這動作是成功的 11/09 21:23