- - PR -
PHP/scp+expectについて
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2007-11-27 00:59
お世話になっています。
ブラウザからphpにアクセスした時にexecからscpをexpectで自動化したスクリプトを使って ファイルをコピーしようとしています。 これ自体はできたのですが、たまにコピーできないことがあって困っています。 コピー元、コピー先は常に同じ場所なので権限関係の問題ではないと思っており、 原因がわからない状態です。 何かあったら教えて頂けると助かります。 よろしくお願いします。 // execからパスなしの鍵を使って直接scpを使う方法も試してみましたが // コマンドが実行されなかったみたいなので // このやり方でやっています(ここらへんも再確認する必要はありそうですが・・・) 最後にコードを張っておきます。 xyz.php -------------------------------------------------- <?php unlink( "./xyz" ); exec( "sh auto_scp.sh root password 192.168.1.100 /usr/local/sample/xyz ./" ); if( file_exists( "./VR101_C_start.sh" ) ) echo "ok"; else echo "no"; ?> auto_scp.sh -------------------------------------------------- #! /bin/sh # $1: ユーザ名 # $2: パスワード # $3: 接続先のIPアドレス # $4: コピー先 # $5: コピー元 expect -c " set timeout 20 spawn scp -q $1@$3:$4 $5 expect { \\"Are you sure you want to continue connecting (yes/no)?\\" { send \\"yes\\r\\" expect \\"password:\\" send \\"$2\\r\\" } \\"password:\\" { send \\"$2\\r\\" } } interact " |
|
投稿日時: 2007-11-27 03:49
timeoutとか。
エラー出力をファイルに記録してみてはいかがでしょう。 |
1