2014-03-19 209 views
0

我有一個基本的shell腳本這樣;Perl腳本調用內部的bash腳本,用系統命令」

#!/usr/bin/bash 
echo "Openning ssh connection to remote host "$2" for "$1" user and finding the archive directory "$3"" 
ssh "$1"@"$2" find "$3" 

我必須在腳本Archive.pl命名我們連接遠程服務器的Telnet另一perl腳本連接。我想打電話給我的這個Perl腳本內腳本中使用Perl腳本的其他模塊。我想的是命令,但它不工作。

system("Connector.sh",$arg1,$arg2,$arg3); 

任何想法做呢?

+0

你確定的路徑? – user3004356

+0

Perl和bash腳本實際上處於相同的路徑 – Hayra

+0

我想你需要提一下 - ./Connector.sh – user3004356

回答

1

您可以跳過shell腳本,並將其放入Perl腳本中。

print qq(Opening ssh connection to remote host "$arg2" for "$arg1" user and finding the archive directory "$arg3"); 
system("ssh", "$arg1\@$arg2", "find", $arg3) 
+0

ssh:picroot:臨時名稱解析失敗。我得到那個錯誤 – Hayra

+0

什麼是'picroot'? 'ssh'連接是否在Perl腳本之外工作? – chepner

+0

picroot是用戶名。是的,我可以通過控制檯或我的bash腳本輕鬆連接。 – Hayra