0

OSXボックスで毎分実行されるcron化された「cp * .html」コマンドがあります。ソース ファイルはデータベースから再生成され、ソース ディレクトリに正常に書き込まれます。通常、cp コマンドはそれらを取得し、/Library/WebServer/Documents 内のコピーを更新します (これは、プロセスの 1 つを監視する、手早く汚れた内部 Web サイト用です。アプリケーション サーバーの維持に余分なサイクルを費やしたくありません。または同様のものなので、OSX の組み込みの Apache のコピーをデフォルト設定で使用しているだけです。)

新しい foo.html ページをソース ディレクトリに追加すると、*.html パターンに一致するにもかかわらず、一度手動でコピーするまで cronned cp コマンドがコピーを開始しないことに気付きました。これはクレイジーに思えます。権限と所有権はすべて同じ方法で設定されます (両方のディレクトリ内のすべてに対して rw-r--r-- )。

何か案は?何がうまくいかないのかわからない場合は、おそらくrsyncを使用するように書き直しますが、それは警官のようです.

4

1 に答える 1

1

よくわかりませんが、cron が '*' を 1 回だけ展開しているようです (最初の呼び出し時でしょうか?)。これをコマンドとして使用してみてください:

sh -c 'cp $OUR_DATA/reports/*.html /Library/WebServer/Documents'

このようにして、ワイルドカードは毎回最初から拡張されます。

于 2009-12-28T21:21:40.317 に答える