Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过php exec()实现SFTP_Php_Exec_Sftp - Fatal编程技术网

通过php exec()实现SFTP

通过php exec()实现SFTP,php,exec,sftp,Php,Exec,Sftp,是否可以使用SFTP linux命令,使用php exec()或system()函数 我试试这个: exec('sftp '.$user.'@'.$server.' && '.$pass.' && get '.$path1.' '.$path2.'); 但它不起作用。猜测(至少是因为登录) 还试图拆分高管,但仍然没有用: exec('sftp root@'.$server); exec($pass); exec('get '.$path1.' '.$path2)

是否可以使用SFTP linux命令,使用php exec()或system()函数

我试试这个:

exec('sftp '.$user.'@'.$server.' && '.$pass.' && get '.$path1.' '.$path2.');
但它不起作用。猜测(至少是因为登录)

还试图拆分高管,但仍然没有用:

exec('sftp root@'.$server);
exec($pass);
exec('get '.$path1.' '.$path2);
可能有任何内联命令或其他语法

是的,我想使用SFTP,不,我不想使用库

另外,如果有某种方法可以使它与特殊的bash或etc文件一起工作,那么我也可以使用exec()运行它。

解决方案是:

system('sshpass -p '.$pass.' sftp -o StrictHostKeyChecking=no root@'.$server.':'.$path.' '.$path, $D);

您可以使用为什么首先要使用
sftp
?+还要注意
sftpuser@server&&get
也是错误的。这是行不通的。你们有并没有在命令行(在shell中)上尝试过呢?你们显然不知道shell是如何工作的,那个么你们为什么还要走这条路呢请改用一些本机PHP SFTP库@MartinPrikryl我在shell of C试过这个。在shell中,我一步一步地做。问题是如何对php exec()执行相同的操作。我知道shell是如何工作的,我只是不知道如何正确使用这里的php函数。不,你没有在shell中尝试过。如果您这样做了,您就会知道
sftpuser@server&&get
不起作用。你不知道shell是如何工作的。如果您知道,您将知道
exec('sftproot@.$server)
exec('get'.$path1'.$path2')甚至比
sftp更无意义user@server&获取