셸 스크립트 --- A 및 B 시스템의 로그 파일을 자동으로 정리

A 및 B 시스템의 로그 파일 자동 정리

  • [쉘 요구 사항]
    두 가지 유형의 머신이 300 개 이상 있으며 두 유형의 머신에서 로그 파일을 자동으로 정리하는 스크립트를 작성합니다.
    유형 A 시스템의 로그 스토리지 경로는 균일하며 유형 B 시스템의 로그 파일 스토리지 경로는 *와 일치해야합니다 (이 디렉토리에는 삭제할 수없는 로그 파일 외에 다른 파일이 있으므로 일치 할 때 * .log를 참조하십시오).

유형 A 스토리지 경로 : / opt / cloud / log / 요구 사항 : 7 일 전 로그 삭제
유형 B 스토리지 경로 : / opt / cloud / instances / 요구 사항 : 15 일 전 로그 삭제

  • [쉘 분석]
    1. 일반 스크립트를 작성해야합니다. 즉, A 급 시스템이든 B 급 시스템이든 상관없이 스크립트를 실행할 수 있습니다.
    2. 유형 A 또는 유형 B 시스템인지 여부를 확인해야합니다. / opt / cloud / log / 또는 / opt / cloud / instances / 디렉토리의 존재를 확인하여 어떤 유형의 시스템인지 확인할 수 있습니다.
    3. 유형 A 시스템을 직접 찾습니다 . 그게 다입니다. 그러나 클래스 B 시스템의 경우 -name ".log"를 찾는 것이 약간 번거 롭습니다.
    4. 찾기 전날의 매개 변수를 찾습니다
    . 5. 로그 파일을 찾은 후 rm 명령에 전달하여 삭제합니다.

  • [쉘 구성]

    aPATH="/opt/cloud/log/"
    bPATH="/opt/cloud/instances/"
    if [ -d $aPATH ];then
    
       find $aPATH -mtime -7 -name "*.log" -exec rm -rf {} \;
       echo "$?" && echo "日志文件已删除"
    
      elif [ -d $bPATH ];then
    
       find $bPATH -mtime -15 -name "*.log" -exec rm -rf {} \;
       echo "日志文件已删除"
    
    Fi
    
  • [쉘 테스트]
    카테고리 A와 B에서 ".log"파일을 생성하고 스크립트를 실행 한 후 삭제할 수 있습니다
    (디렉토리의 파일 형식은 .log이며 로그 파일 생성 시간은 며칠 전과 며칠 후입니다 (예 : : 7 일 전 +7, 7 일 후 -7, 오늘 건설 -7))

추천

출처blog.csdn.net/XCsuperman/article/details/108305031