質問: unlink glob("msg-*.txt"); 保存し、ブラウザーでアクセスすると、ちゃんと ファイルが削除されるのですが、 シェル上で実行すると、以下のようなメッセージ glob failed (child exited with status 1) at test.cgi line 5. とか出て削除ができないのです。 パーミッションも 755 とかで試したのですが、 どうしてなのでしょうか・・・うんうん煮詰まって います。
回答: おっしゃるように権限でしょうか...。 だとすると、シェルでwebサーバの実行ユーザ(多分wwwかnobody)を使って動かすとうまくいくのでしょうか? ※マシン管理者の協力がいりますが...。 ------------------------ globe() と unlink() を分けるとどちらでエラーに なるのでしょうか? #!/usr/local/bin/perl $a = glob("msg-*.txt"); $b = unlink("msg-1.txt"); ------------------------ ほとんど可能性はないですが、リソース不足(メモリ、disk)ということもあるかもしれません。 ちなみに私のperlの環境は this is perl, v5.6.1 built for sun4-solaris です。 glob(),unlink()はきちんと動きます。