만료 날짜를 추가해야 하는 여러 구성 파일(apache2와 유사)을 사용하여 서비스를 실행하는 데비안 서버가 있습니다. 만료 날짜가 있는 구성 파일은 해당 날짜가 포함된 설명으로 시작됩니다.
#dd.mm.yyyy
문제는 모든 문서에 만료일이 있을 필요는 없다는 것입니다. 이 댓글이 없습니다.
각 구성 파일의 첫 번째 줄을 구문 분석하는 cron에 의해 주기적으로 실행되는 bash 스크립트를 작성해야 하며, 만료된 경우 이 파일에서 작업(예: 다른 폴더로 이동)을 수행한 다음 문제가 있는 파일을 다시 로드하거나 다시 시작해야 합니다. 서비스. 만료 날짜 주석이 없는 파일은 무시해야 합니다(이러한 파일에는 조치가 필요하지 않습니다).
파일이 만료되었는지 확실하게 확인하는 방법은 무엇입니까?
답변1
흥미로운 질문입니다.
다음 코드는 이렇게 작성되었습니다.느슨하게이 문제를 해결하기 위해.
느슨하게, 다음 코드는 파일에 "공간"이 포함되어 있다고 가정하기 때문입니다. 또한 각 .conf 스크립트의 첫 번째 줄에 "#YYYYMMDD" 타임스탬프가 있다고 가정합니다.
필요에 따라 자유롭게 수정하세요.
#!/bin/bash
for i in `find /etc -name *.conf`
do
Current_date=$(date +"%Y%m%d")
date_to_compare=$(head -n1 $i | sed 's/^#//g')
if [ $Current_date -ge $date_to_compare ]; then
echo "Move the file to new directory"
echo "Start the relevant service"
fi
done