人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

【PHPでSCPコマンド】
PHPでバッチ処理の中でSCPでリモートからファイルを持ってくるプログラムを作成しています。

バッチの中で、scp -B ....という形でコマンドを打てるようになったのですが、ファイルが取得に失敗した場合、
scp: warning: Missing destination file.

という表示が出た後にSCPのオプションが表示されるようになりました。

こちらが出さずにエラー終了する方法はありませんでしょうか?

●質問者: folds5
●カテゴリ:コンピュータ インターネット
✍キーワード:Destination Missing PHP Warning エラー
○ 状態 :終了
└ 回答数 : 3/4件

▽最新の回答へ

1 ● えるふん
●30ポイント
exec( "scp -B ... 2> /dev/null");

などとしても出てきますか?

http://www.h7.dion.ne.jp/~matsu/feature/bash/basic/redirect-...

◎質問者からの返答

ありがとうございます。こちら、試してみます。


2 ● kurukuru-neko
●0ポイント

> exec( "scp -B ... 2> /dev/null");

scpはコマンド。

2>/dev/nullは、SHELLのパラメータになるので動作せず

scp は、 パラメータに 2 > /dev/nullが指定

されたと思って動作しています。

対策としては、2> /dev/null を消す。

http://www.opaopa.org/~yuyama/manual/php/data/function.exec....

◎質問者からの返答

ありがとうございます。


3 ● kurukuru-neko
●50ポイント

前の回答は、ポイント不要

scpに-qオプションをつけたら出なくなるかもしれません。

http://www.unixuser.org/~euske/doc/openssh/jman/scp.html

================================================

scp.shを作成

chmod 755 scp.sh

呼び出し方法をscpからscp.shに変更する。

PHPで呼び出しする場合、パラメータパスワード

等の固定部分があれば scp.shに事前記述

した方がよいかも。

#!/bin/bash

scp $* 2>/dev/null >/dev/null

RC=$?

exit $RC

◎質問者からの返答

エラーは事前で行うことにしましたのでいったんこちらの質問を閉じさせていただきます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ