2

手動で正常に実行されるスクリプトがありますが、cronjob を実行すると目的の出力が得られません。スクリプトに問題がある場合はお知らせください。

#!/usr/bin/ksh

file1=$(find *-* -mtime 1)

file2=$(find *-* -mtime 2)


basefile1=$(basename $file1)
basefile2=$(basename $file2)


cd /gtxappl/Release/SCMAudit

./cmp.sh $basefile1 $basefile2 > dailyAuditChecks.txt

mailx -s "Daily Checks Report" ****@homeretailgroup.com < dailyAuditChecks.txt
4

1 に答える 1

4

管理者の選択から:

5.Crontab環境
cronは、シェル(/ usr / bin / sh)を使用してユーザーのHOMEディレクトリからコマンドを呼び出します。
cronは、すべてのシェルにデフォルトの環境を提供し、以下を定義します。
HOME=ユーザーのホームディレクトリ
LOGNAME =user's-login-id
PATH = / usr / bin:/ usr/sbin:。
SHELL = / usr / bin / sh
.profileを実行することを希望するユーザーは、crontabエントリまたはエントリによって呼び出されるスクリプトで明示的に実行する必要があります。

可能な限り絶対パスを使用することをお勧めします。環境変数が必要な場合は、.profileを実行することを忘れないでください。

于 2012-04-11T10:42:32.953 に答える