비슷한 형식의 파일이 많이 포함된 폴더가 있습니다.
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-"는 아무것도 없는 것으로 대체됩니다.from
to
$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.mp3
Walk Away - concert.mp3
zmv '* - (* - *.mp3)' '$1'
zmv '*.mp3' '${f#* - }'