728x90
[Shell Script] 파일의 변경 시간에 따라 조건 설정하기
https://heywantodo.tistory.com/137
위 포스팅에서 토큰 파일에 내용이 있으면 로그인 명령을 실행하는 스크립트를 구성했는데,
토큰 파일이 만료되면 파일이 사라지는게 아닌 그대로 있고 토큰 코드만 만료되는 것이었다 😱 😱
생각해보면 당연한건데 😢
그래서 토큰 코드는 1시간 주기로 새로 받아야하니, 토큰 파일의 변경시간을 확인하고
1시간 이상 변경이 없다면 로그인을 수행하는 스크립트로 새로 구성했다.
새롭게 구성한 스크립트는 다음과 같다.
#!/bin/bash
file_path="/path/to/file.txt"
# 파일의 변경 시간을 가져옴
file_modified=$(stat -c %Y "$file_path")
# 현재 시간을 가져옴
current_time=$(date +%s)
# 파일 변경 시간과 현재 시간을 비교하여 조건 확인
if (( current_time - file_modified < 3600 )); then
$command_to_run
else
echo "The file has not been changed."
fi
경로에 있는 파일의 변경 시간을 가져와 file_modified 변수에 저장한다.
그런 다음 현재 시간을 가져와 변수에 저장한 후 파일의 변경 시간과 현재시간의 차이를 구한 후,
3600초 (1시간) 이상 파일이 수정되지 않았을 경우 로그인 명령어를 실행한다.
%Y와 %s는 에포크 시간(UNIX 타임스태프) 형식으로 표시하도록 지시하는 명령어다.
더이상 스크립트를 수정 할 일이 없길 ...😂
반응형
'🌏 OS > Linux' 카테고리의 다른 글
[Linux] 리눅스 권한 (0) | 2023.08.06 |
---|---|
[Linux] 리눅스 계정 (0) | 2023.08.05 |
[Shell Script] 명령어 실패 시 재시도하기 (0) | 2023.07.08 |
[Shell Script] 파일 내용 여부에 따라 명령어 실행하기 (0) | 2023.07.07 |
[Linux] SSH 설정 변경, 포트 변경 (0) | 2023.06.11 |