나는 SO 게시물에서 많은 PHP 스크립트를 복사 해 보았습니다. Centos를 실행하는 서버에서 파일을 다운로드하려고합니다. psftp (퍼티)를 통해 수동으로 로그인하고 파일을 복사 할 수 있습니다. 그러나 나는 그 과정을 자동화하고 싶다. 그러므로 스크립트가 필요하다.이 스크립트는 로컬 디스크에 파일을 복사합니까?
Windows에서 실행되는 유사한 서버에서 간단한 Perl 스크립트를 통해 ftp로 파일을 다운로드 할 수 있습니다. Centos 서버에서 Perl 스크립트로 연결이 거부되었습니다. 그래서 여러 PHP 스크립트를 시도했다. 그 직업에 대한 아래의 스크립트가 있습니까? 또는 스크립트에 어떤 문제가 있습니까? 당신이 Perl 스크립트에 당신이 cp gateway_data_301.txt
을하고있는 반면에 당신이 echo $sftp->get('gateway_data*');
을하고있는 게시 한 PHP 스크립트의 첫 번째에서 스크립트 1
#!/usr/bin/php
<?php
include('Net/SSH2.php');
$sftp = new Net_SFTP('xx.xx.xxx.xxx');
if (!$sftp->login('myuser', 'mypasswd')) {
exit('Login Failed');
}
// outputs the contents of filename.remote to the screen
echo $sftp->get('gateway_data*');
?>
스크립트 2
#!/usr/bin/php
<?php
include('Net/SSH2.php');
username='myuser';
password='mypasswd';
// Create SCP connection using a username and password
$scp = new SCP(
'xx.xx.xxx.xxx',
new SSH2Password($username, $password)
);
#################################
$sftp = ssh2_sftp($conn);
// Create a new local folder
ssh2_sftp_mkdir($sftp, './data');
// Retrieve a list of files
$files = scandir('ssh2.sftp://' . $sftp . '/data/gateway_data*');
################################################################
?>
두 개의 질문을 두 개의 별도 게시물로 나누십시오. 다운로드 질문에 관해서는 게시 한 코드에 어떤 특정 문제가 있는지 자세히 설명하십시오. –
위의 스크립트는 cd 데이터의 결과를 출력하는 것 외에는 아무런 오류도 발생시키지 않습니다. ls; pwd; 인쇄 "$ stdout"; 인쇄물에 주석을 달면 아무 일도 일어나지 않습니다. –
내 의견보기 http://stackoverflow.com/q/27346971/569976 – neubert