쉘 스크립트로 모든 파일을 날짜순으로 정렬하고 싶습니다.쉘 스크립트를 사용하여 파일을 이름순으로 정렬하는 방법
예를 들어, 에는 M1.h
, A2.h
및 F4.h
파일이 있습니다.
각 파일의 시간이 다릅니다. 날짜와 시간에 따라 가장 오래된 것부터 현재까지의 모든 파일을 어떻게 정렬합니까? 현재
나는 이름 바꾸기 스크립트가 :
cd /Users/KanZ/Desktop/Project/Test/
n=1
for file in *.jpg;
do
echo $file prefix=M file_name=M$n.jpg
echo $file_name n=$(($n+1))
mv $file $file_name
done
JPG 파일 M1.jpg
, M2.jpg
및 M3.jpg
될 것이지만 처음 내가 스크립트를 실행 나는이 디렉토리에라는 이름의 새 파일 A1.jpg
을 추가하고 스크립트를 실행하는 경우 다시 M1.jpg
, M2.jpg
및 M3.jpg
은 (스크립트를 실행하기 전에이 파일의 이름은 A1.jpg
)으로 바뀝니다. 첫 번째 문자는 A
이며 M
이 오기 때문입니다.
나는 M1
, M2
, M3
및 M4.jpg
을 받고 싶습니다.
질문이 중간에서 변경되었습니다. 그것은'* .h' 파일을 정렬하기 시작했지만 주석과 코드는'* .jpg' 파일을 정렬하는 것을 반영합니다. 일관성은 질문 할 때 중요합니다. –