에포크 이후 타임스탬프가 있는 파일 나열

에포크 이후 타임스탬프가 있는 파일 나열

나는 기본적으로

find /

출력은 다음과 같습니다

find / | xargs -L1 stat -c%Z

첫 번째 명령은 / 디렉터리의 파일을 나열하고, 두 번째 명령은 각 파일의 타임스탬프를 나열합니다. 이 두 가지를 결합하여 다음과 같은 파일과 타임스탬프를 얻을 수 있습니다.

/path/to/file 1501834915

답변1

GNU find가 있다면 다음을 사용하여 완전히 수행할 수 있습니다 find.

find / -printf '%p %C@\n'

형식 지정자는 다음과 같습니다.

     %p     File's name.
     %Ck    File's last status change time in the format specified by
            k, which is the same as for %A.
     %Ak    File's last access time in the  format  specified  by  k,
            which  is  either `@' or a directive for the C `strftime'
            function.  The possible values for k  are  listed  below;
            some  of  them might not be available on all systems, due
             to differences in `strftime' between systems.

             @      seconds  since  Jan.  1,  1970,  00:00  GMT,  with
                    fractional part.

분수 부분이 필요하지 않은 경우 s대신 @시간 형식 지정자로 사용하세요. (일부 시스템은 그렇지 않지만 sLinux 및 *BSD/OSX는 그렇습니다 s.)

find / -printf '%p %Cs\n'

답변2

find당신 을 대신해서 요청해 보는 게 어때요 stat?

find / -exec stat -c'%n %Z' {} +

find는 각 항목(파일 또는 디렉터리)에 대한 통계를 실행합니다.

답변3

나는 그것을 사용하여 그것을 해결했다.

find / | while read filename
    do
    echo -n "$filename " && stat -c%Z $filename
done

하지만 Archemar의 답변이 더 좋아 보이기 때문에 이 솔루션을 사용하지 않겠습니다.

관련 정보