>

로그 파일이 마지막으로 업데이트 된 후 경과 한 시간을 계산하려고합니다.

다음 명령이 사용될 것 같아요

lastUpdate=$(date -r myLogFile.log)
now=$(date)

어떻게 빼고 몇 초 동안 결과를 얻을 수 있습니까?

  • 답변 # 1

    lastUpdate="$(stat -c %Y myLogFile.log)"
    now="$(date +%s)"
    let diff="${now}-${lastUpdate}"
    
    

  • 답변 # 2

    두 출력을 비교하여 현재 날짜와 수정 된 날짜 사이의 시간 (초)을 가져옵니다

    stat -c %Y file  vs date +%s
    
    

  • 답변 # 3

    한 라이너 :

    와이즈 비즈

  • 답변 # 4

    거의 거기에 있습니다! 그냥

    stat -c %Y /path/to/file | echo `expr $(date +%s) - $(cat)`

    에게 말해  계산하기 쉬운 형식을 사용합니다.

    date
    
    
    lastUpdate=$(date -r myLogFile.log +%s) now=$(date +%s) file_age=$((now - lastUpdate))

관련 자료

  • 이전 shell - 디렉토리에서 파일 이름의 하위 문자열을 바꿉니다
  • 다음 리눅스 민트에서 와이파이 문제