在 shell_exec php 中使用 sftp

Use of sftp with shell_exec php

我正在尝试从远程主机获取文件,但它询问我密码并且脚本应该 运行 无需我输入密码。我怎样才能发送密码?我必须使用 shell_exec.

<?php
    $command="sftp  user@ip adress";
    shell_exec($command);
?>

我的建议:使用 phpseclib, a pure PHP SFTP implementation 之类的东西。例如

<?php
include('Net/SFTP.php');

$sftp = new Net_SFTP('www.domain.tld');
if (!$sftp->login('username', 'password')) {
    exit('Login Failed');
}

// copies filename.remote to filename.local from the SFTP server
$sftp->get('filename.remote', 'filename.local');
?>