2015-01-20 1 views
1
I am copying the files from one host to another using: 
Net:scp::Except; 
here is my script 

엄격한 사용; Net :: SCP :: Expect를 사용하십시오.scp 모듈에서 자동으로 사용자 이름과 암호를 전달 하시겠습니까?

인쇄 "사용자 이름 입력 \ n"; my $ username = <>;

인쇄 "enter password \ n"; my $ pass = <>;

인쇄 "호스트 이름 입력 \ n"; my $ host = <>;

my $ src_path = "/"; my $ dst_path = "/";

my $ scpe = Net :: SCP :: Expect-> new (사용자 => $ username, password => $ pass, auto_yes => '1'); $ scpe-> scp ($ 호스트. ":". $ src_path, $ dst_path);

getting error like bad password 
+0

[scp 모듈의 입력으로 사용자 이름과 암호를 제공하는 방법은 무엇입니까?] (http://stackoverflow.com/questions/28023429/how-to- 스크랩 모듈로 사용자 이름 및 암호 제공) – Matteo

+0

같은 질문을 여러 번하지 마십시오 (원래 질문을 편집하거나 주석을 달 수 있음) – Matteo

답변

1

이러한 변수는 STDIN으로부터 수신되며 모든 변수에는 후행 \n이 포함됩니다. 당신은 사용하기 전에 chomp 그들에게 할 것입니다 :

chomp ($username,$pass,$host); 
my $scpe = Net::SCP::Expect->new(user=>$username, password=>$pass, auto_yes=> '1'); 
$scpe->scp($host.":".$src_path, $dst_path); 

순 :: SCP :: 기대는 매개 변수에서 함께 물렸다 명령 줄을 사용하여 SCP 프로그램을 실행합니다. 따라서 chomping을하지 않고도 효과적으로 []

+0

고맙습니다. –

관련 문제