[PHP-users 6913] Re: exec()でリモートホストにscp

Nao KAJITA php-users@php.gr.jp
Mon, 15 Apr 2002 20:29:26 +0900


梶田です。矢野さま早々のリプライありがとうございます。

At Mon, 15 Apr 2002 17:47:08 +0900,
矢野 豪 wrote:

> exec()では返り値が取れますが、その中身はご確認
> されましたでしょうか。
> なんでダメって言われているかがわかると思いますが。

うーん、それがですね、exec()の返り値が出力されないのです。

exec( "/hoge/somewhere/scp-wapper -i 
	/home/webexec/.ssh/identity /hogehoge/file1 
	webexec@local.hoge.com:/hoge/file1", $array, $status );
foreach( $array as $value ){
	echo "VAL = $value\n<BR>";
}
echo "Status = $status\n<BR>";

の出力結果は
VAL =
Status = 127

ってな感じで、Statusのみ出力されます。

$exec_message = exec( "hoge" );
echo $exec_message;

も何も吐き出されません。

何か根本的に勘違いしているのでしょうか?

#そもそもExec()の戻値ってエラーメッセージも返すのでしょうか?
#("ls -l /hoge")等の出力結果として出したことはあるのですが。

結果を >> hoge としてリダイレクトしてあげても、何も
残らないのはなぜだろう?

かじた