연속으로 가장 오래된 파일의 나이 찾기

연속으로 가장 오래된 파일의 나이 찾기

나는 노력했다

stat -c %Y ./* 2>/dev/null | awk -v d="$(date +%s)" 'BEGIN {m=d} $0 < m {m = $0} END {print d - m}'

현재 디렉터리에서 가장 오래된 파일의 나이를 찾으려면 이 줄을 사용하여 초 단위의 숫자를 가져옵니다.

번호는 어떻게 받나요?하늘그 줄에? 감사해요

답변1

내가 올바르게 기억한다면 이 솔루션은 복잡한 구조를 사용하지 않고 가장 오래된 연령(일)도 인쇄해야 합니다.

echo "$(( ($(date +%s) - $(stat -c %Y ./* | sort -n | head -n 1)) / 86400 )) days"

귀하의 질문에 답하려면 질문을 마무리하고 계산해 보세요.

echo $(( $(stat -c %Y ./* 2>/dev/null | awk -v d="$(date +%s)" 'BEGIN {m=d} $0 < m {m = $0} END {print d - m}') /86400 ))

답변2

그리고 :perlzsh

$ ls -ld ./*(D-Om[1])
-rw-r--r-- 1 stephane stephane 205 Jan 11  2004 ./Y2K
$ perl -le 'print -M shift' ./*(D-Om[1])
5947.59262731482

나노초 정밀도만 사용 zsh(컴파일러 정밀도로 제한됨 double):

zmodload zsh/datetime zsh/stat
stat -F %s.%N -A t +mtime ./*(D-Om[1]) &&
  print $(((EPOCHREALTIME - t) / 24 / 60 / 60))

(참고하세요.하늘이 경우에는 86400 Unix 두 번째 장치입니다)

관련 정보