파일 이름 자르기

파일 이름 자르기

비슷한 형식의 파일이 많이 포함된 폴더가 있습니다.

Dropkick Murphys - 01 - Walk Away.mp3
Dropkick Murphys - 02 - Workers Song.mp3

등...

다음과 같이 표시되도록 모두 변환하고 싶습니다.

01 - Walk Away.mp3
02 - Workers Song.mp3

어떻게 해야 하나요?

답변1

Ubuntu 또는 Debian에서는 간단합니다.

rename 's/Dropkick Murphys - //' *mp3

답변2

하나를 선택하세요.

for i in *.mp3; do mv "$i" "${i#* - }"; done
for i in *.mp3; do mv "$i" "${i:19}"; done

답변3

for루프를 사용하여 수정하려는 파일을 반복 할 수 있습니다 . 은 in 의 ${var/from/to}첫 번째 항목을 대체하므로 " Dropkick Murphys-"는 아무것도 없는 것으로 대체됩니다.fromto$var${var/Dropkick Murphys - /}

for i in "Dropkick Murphys - "*; do
    mv "$i" "${i/Dropkick Murphys - /}"    
done  

답변4

zsh 강제 답변:

autoload zmv
zmv 'Dropkick Murphys - (*.mp3)' '$1'

변형은 모든 아티스트 이름을 바꿉니다. 첫 번째 명령은 첫 번째 명령과 가장 긴 일치 항목을 사용합니다 . 예를 들어 이름 이 로 *변경됩니다 .Dropkick Murphys - 01 - Walk Away - concert.mp3Walk Away - concert.mp3

zmv '* - (* - *.mp3)' '$1'
zmv '*.mp3' '${f#* - }'

관련 정보