지금이 같은 이름 바꾸기 스크립트가 :쉘 스크립트 이름 바꾸기
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를이 디렉토리에 추가하고 스크립트를 다시 실행하십시오. All of M1.jpg M2.jpg M3.jpg는 첫 번째 문자가 A이기 때문에 M4.jpg (실행 스크립트 이전에이 파일은 A1.jpg로 바뀜)로 대체됩니다. M보다 앞에옵니다. 이것은 제 문제입니다. M1 M2 M3 M4.jpg를 받고 싶습니다. 새 파일이 올 때마다이 스크립트는 M5.jpg M6.jpg와 같은 계속 이름을 생성합니다. 코드는 어떻게 생겼습니까? 당신이 그것을 이해하기를 바랍니다.
스크립트가 매우 손상된 것 같습니다. 여기에 복사하여 붙여 넣을 때 문제가 발생했다고 생각합니다. 특히 필요한 줄 바꿈이 누락 된 것 같습니다. – ruakh
[Guard] (https://github.com/guard/guard)를 확인하십시오 – ocodo