날짜를 표준 형식으로 변환

날짜를 표준 형식으로 변환

이 명령을 사용하고 있습니다.

find -name (file name) -ls | awk '{print $11,"\t",$5,"\t",$7,"\t",$8,$10}' 

수많은 파일에서 정보를 수집합니다. 그러나 일부 파일은 파일이 2018년에 수정된 경우 날짜가 있어야 할 이상한 숫자를 제공합니다. 이 숫자를 표준 형식(예: 2016년 5월, 2017년 5월, 2018년 5월)으로 변환하기 위한 제안 사항이 있는지 궁금합니다. 2017년 이전에 수정된 파일의 출력에는 문제가 없습니다.

현재 연도(예: 2018년 5월)의 출력을 이 형식으로 얻을 수 있는 방법이 있습니까?

답변1

Linux를 사용하고 있으므로 다음 명령 -printf의 매개변수를 사용할 수 있습니다 find.

find -name 'pattern' -printf '%p\t\t%Tb %TY\n'

예제 출력:

$ find -name 'file*' -printf '%p\t\t%Tb %TY\n'
./file1     Sep 2018
./file6     Sep 2018
./file4     Sep 2018
./file2     Sep 2018
./file3     Sep 2018
./file5     Sep 2018

답변2

이 명령을 시도해 보세요.

find . -name (file name) | xargs ls -l --time-style="+%b %Y" | awk '{print $NF,$3,$5,$6,$7}' OFS="\t"

ls -l --time-style="+%b %Y"그러면 ls 출력의 시간 스타일이 MMM YYYY로 변경됩니다.

관련 정보