한 디렉터리에 여러 개의 파일이 있는데 이름을 바꾸고 파일 이름에서 일치하는 단어만 제거하고 싶습니다.
예시 파일:
8 - build a php mvc application - finished (part 8_9).mp4
9 - build a php mvc application - database (part 9_9).mkv
두 파일의 확장명이 다르고 제거하고 싶은 일치하는 부분이 있습니다.
(part 9_9)
이 부분은 아무리 많아도 삭제하고 싶습니다 .
답변1
문자열을 제거하고 싶지만 (part 8_9)
숫자 쌍에 대해서는 다음 rename
명령(때때로 호출됨 prename
)을 사용할 수 있습니다.
rename -n 's/\s*\(part \d+_\d+\)//' *part*
이 버전은 또한 패턴 앞의 모든 공백을 제거하여 요청하지 않았더라도 파일 이름이 더 보기 좋게 만듭니다. \s*
정말로 이 작업을 수행하고 싶지 않다면 패턴의 앞부분을 무시하세요.
예상대로 작동한다고 확신하면 "무슨 일이 일어나는지 알려주세요" 플래그를 -n
로 변경 -v
하거나 완전히 제거하세요.
rename
여기에서 사용하는 식별자는 다음과 같습니다 .
rename
Usage: rename [-v] [-n] [-f] perlexpr [filenames]