![이름에서 문자열을 찾아 확장자 앞의 이름으로 이동합니다.](https://rvso.com/image/898936/%EC%9D%B4%EB%A6%84%EC%97%90%EC%84%9C%20%EB%AC%B8%EC%9E%90%EC%97%B4%EC%9D%84%20%EC%B0%BE%EC%95%84%20%ED%99%95%EC%9E%A5%EC%9E%90%20%EC%95%9E%EC%9D%98%20%EC%9D%B4%EB%A6%84%EC%9C%BC%EB%A1%9C%20%EC%9D%B4%EB%8F%99%ED%95%A9%EB%8B%88%EB%8B%A4..png)
다른 하위 디렉터리에 많은 파일이 있습니다. *-ABC-DE(7 numbers).ext
다음 이름의 모든 파일 이름을 바꾸고 싶습니다 .*-DE(7 numbers)-ABC.ext
가능합니까?
답변1
주어진
$ ls *.ext
bar-ABC-DE7654321.ext foo-ABC-DE1234567.ext
그 다음에
$ rename -v 's/(ABC)-(DE\d{7})/$2-$1/' *.ext
rename(bar-ABC-DE7654321.ext, bar-DE7654321-ABC.ext)
rename(foo-ABC-DE1234567.ext, foo-DE1234567-ABC.ext)
~를 야기하는
$ ls *.ext
bar-DE7654321-ABC.ext foo-DE1234567-ABC.ext
-n
먼저 NB 테스트