別の場所のログを削除するには、シェルスクリプトを使用する必要があります。

別の場所のログを削除するには、シェルスクリプトを使用する必要があります。

名前が異なるログは別の場所から削除する必要があり、5日より古いログは削除する必要があります。

前任者:

/abc/bcd/fgh/log/log1.txt
/abc/bcd/fgh/test/log2.log
/test/urc/mhg/event.log
/hjy/jghd/qwer/nbcvd/eda.log

答え1

あなたは少し見なければなりません。ログの回転これらのタスクを自動化するように設計されています。設定ファイルを作成し、ログの場所と処理方法を教えてください。ログをスケジュールして回転/削除します。

答え2

このスクリプトをcrontabに追加する

 #!/bin/bash

LogArray=()
LogArray+=('/abc/bcd/fgh/log/log1.txt')
LogArray+=('/abc/bcd/fgh/test/log2.log')
LogArray+=('/test/urc/mhg/event.log')
LogArray+=('/hjy/jghd/qwer/nbcvd/eda.log')

    for (( i=${#LogArray[@]}-1; i>=0; i-- )); do
        if test `find ${LogArray[$i]} -ctime +5`
            then
                truncate -s 0 ${LogArray[$i]}
                chmod ""$(stat -c %a ${LogArray[$i]})"" ${LogArray[$i]}
        fi
    done

    exit 0

関連情報