0

フォームを取得し、それをcsvファイルとして出力し、リモートサーバーにアップロードしてから、サーバー上の別のディレクトリに移動する長いPHPスクリプトがあります。アップロード後にリモートフォルダーに移動することを除いて、すべてが機能しています。ここに私が持っているものがあります:

    $connection = ssh2_connect('server.url', 22);
    ssh2_auth_password($connection, 'user', 'pwd');
    ssh2_scp_send($connection, '/var/app/current/Folder/LocalFolder/File.csv', '/home/user/RemoteFolder1/File.csv', 0644);

    //here is where I am stuck
    mv /home/user/RemoteFolder1/File.csv /home/user/RemoteFolder2/File.csv

    //I think this exits sufficiently, is there a better way
    ssh2_exec($connection, 'exit');
    unset($connection);

2 番目のフォルダーにアップロードするだけでなく、移動する必要があるのはなぜですか?私が尋ねたのと同じ質問です。リモート サーバーの管理者から、「ファイルのアップロード中にファイルを読み取る競合状態が発生するのは簡単です。これにより、ファイルの一部しか受信できなくなります。完全にアップロードしてから、2 番目のフォルダーに移動する必要があります。RemoteFolder1 から RemoteFolder2 に移動するにはどうすればよいですか? これまでのところ、正しいコマンドがわからず、機能mvmove_uploaded_fileていません

4

0 に答える 0