2010-06-29 111 views
2

我有一個腳本在遠程主機,我作爲./test/a/b/c/f運行,它在機器上運行得非常好。ssh問題 - 沒有這樣的文件或目錄

現在我在主機上運行與ssh root @ dst「./test/a/b/c/f」相同的腳本,這也運行正常。

但是從我的Perl腳本我使用反引號作爲

$file = "https://stackoverflow.com/a/b/c/f"; 
`ssh root\@dst "./test $file"`; 

system("ssh root\@dst \"./test $file\" "); 

它執行它說的bash:./測試沒有這樣的文件或目錄。

我試圖使用單個\和\轉義$文件。即使這樣也行不通。任何想法如何解決這個,

謝謝。

回答

3

你是否嘗試過使用絕對路徑而不是基於./的?它可能會解決這個問題,並且通常會更安全(特別是以root身份進行連接時),而不是依賴任何設置cwd(可能基於歷史記錄的bash)以每次都以相同方式設置它。

+0

嘿,非常感謝。這工作:) – Anu 2010-06-30 00:20:54

相關問題