簡単な bash スクリプトを作成して、いくつかのファイルを見つけてコマンドを実行しました。このコマンドは、実行ごとに保存する必要があるコンテンツを出力する必要があります。
だから、私は次のようなものを持っています:
find /some/folder/ -name "*txt" -exec /bin/sh -c "/path/command -x -f {} > {}.pdf" \;
したがって、 /some/folder/内の txt ファイルを見つけて、 1 つにつき 1 つ/path/commandを実行し、filepath を/path/commandのパラメータ-fに渡し、バイナリを取得するので、出力を取得して追加するだけです。サフィックス.pdf。
問題は、これを手動で実行すると、すべてがうまくいったことです。しかし、これをcronに入れると、次のことが起こります:
- 存在する場合/some/folder/sample.txt私は /some/folder/sample.txt.pdf を取得しました(したがって、検索して>は正常に動作するようです)、 /path/commandによって実行されるようですが、 -f /someは使用しません。 /folder/sample.txtパラメータ。
- /path/commandは-f /some/folder/sample.txtを取得しないようで、作成された/some/folder/sample.txt.pdf内に-fパラメータを何かで取得する必要があることを示す警告メッセージを出力します。
繰り返しますが、これをコマンドラインで (cron ではなく) 実行すると、すべてがうまくいくことに注意してください。
ここで何か間違ったことはありますか?
サポートに感謝します。