2015-06-10 89 views
0

我正在執行遠程機器中存在的jar file。當我從我的本地計算機上執行下面的命令,我得到錯誤:在遠程機器上執行jar文件時出錯

ssh -i /root/.ssh/pem_file [email protected][host_ip]:/home/user/folder1/java -cp jar1.jar -a option1 -e [email protected] -f TextFile.txt 

/home/user/folder1/就是jar file存在於遠程machine.The錯誤我得到的位置是:

Unknown cipher type 'p' 

然後我擡起頭來這個錯誤,並發現與ssh我們可能不需要它。所以,我從它刪除-cp並執行以下命令:

ssh -i /root/.ssh/pem_file [email protected][host_ip]:/home/user/folder1/java jar1.jar -a option1 -e [email protected] -f TextFile.txt 

現在,我得到的錯誤是:

ssh: Could not resolve hostname [host name]:/home/user/folder1/java: nodename nor servname provided, or not known 

我怎樣才能解決這個問題?

+0

你有沒有通過'ssh'連接和運行中的一行代碼'jar'呢? –

+0

@JonnyHenly是的。 – user2966197

+0

當你說'[host_ip]'是你括住'host_ip'在文字括號('[]')? –

回答

2

的命令應該傳遞給ssh主機通過空間不是冒號隔開後,像這樣:

ssh -i /root/.ssh/pem_file [email protected][host_ip] /home/user/folder1/java -cp jar1.jar -a option1 -e [email protected] -f TextFile.txt 

如果你有在可能由當地的外殼被解析前發送至遠程主機的命令部分(例如cd /tmp && lscat /file | uniq > some.log)應該用單引號括:

ssh -i /root/.ssh/pem_file [email protected][host_ip] 'cd /home/user/folder1 && java -jar jar1.jar -a option1 -e [email protected] -f TextFile.txt' 
+1

中以這種方式顯示了該命令也應該用單引號括起來。 –

+0

@JonnyHenly不,並不總是需要。試着執行'ssh example.com java -version'。 – sainaen

+0

@JonnyHenly命令的哪一部分應該用引號括起來? – user2966197