読者です 読者をやめる 読者になる 読者になる

てきとうなメモ

本の感想とか技術メモとか

run-partsで特定のスクリプトを除外する

CentOS

yumでインストールしたcronのスクリプトがエラーになってメールが送られてきて、とりあえず黙らせたいということがあったので。

こんな感じになっているので、普通に実行権限を外すか、jobs.denyにスクリプト名を1行追加するかが妥当かな。除外される名前に変更するという方法もあるがちと微妙。

for i in $(LC_ALL=C; echo $1/*[^~,]) ; do
        ...

        # jobs.deny prevents specific files from being executed
        # jobs.allow prohibits all non-named jobs from being run.
        # can be used in conjunction but there's no reason to do so.
        if [ -r $1/jobs.deny ]; then
                grep -q "^$(basename $i)$" $1/jobs.deny && continue
        fi
        if [ -r $1/jobs.allow ]; then
                grep -q "^$(basename $i)$" $1/jobs.allow || continue
        fi

        if [ -x $i ]; then
                # ここでスクリプトを実行
                ...
        fi
done

あと、ubuntuのrun-partsは別物。