우분투 리눅스도 파일 이름 일괄 변경 작업은 GUI 기반의 도구로 일괄 변경하는 것이 가장 편하지만, 불가피한 경우에는 커맨드라인 기반의 터미널 창에서 처리해야 될 경우가 있을 수 있습니다.

(GUI 기반의 툴을 원한다면 XFCE 인터페이스에 내장된 thunar 파일관리자의 Bulk Rename 도구 / pyRenamer 라는 도구 / Metamorphose 라는 도구들이 있는 것 같습니다. 이 글에서는 다루지 않을테니 관심 있으면 다른 분의 글(영문)을 참고하세요.)

 

리눅스 터미널 창에서는 rename 명령어를 이용하는 방법, mv 명령어를 이용하는 방법들이 검색되었는데... 전반적으로 어렵게 느껴져서 비교적 쉬운 방법을 찾다가 아래의 포스팅을 발견했습니다.

 

https://jungsangun.tistory.com/7691380

 

리눅스 ssh 쉘에서 mv 이용하여 파일명에 접두사 추가하기

리눅스 ssh 쉘에서 mv 명령어를 이용하여 파일명 앞에 일괄로 접두사(prefix), 접미사(suffix)를 추가하기 rename 명령어도 가능하지만 별도 패키지를 설치해야 rename 명령을 사용할 수 있다. 웹호스팅에

jungsangun.tistory.com

 

저는 위의 파일들에 20130515- 라는 접두어(prefixp)를 추가하고 싶었습니다.
예를 들어 01.png 를 20130515-01.png 이렇게 바꾸고 싶었어요.

 

for f in *.*; do mv "\$f" "20130515-\$f"; done;
이런 식으로 입력했더니 잘 처리되었습니다.

 

추가했던 접두사(prefix)를 제거하려면 어떻게 할까 찾아봤는데, 아래처럼 입력하면 되더군요.

 

rename 20130515- "" 20130515-*

어? rename 명령어... 쉬워 보이는데요?

 

rename expression(이 표현을) replacement(이것으로 바꿔라) file(이런 파일만 골라서...)

 

rename "" "20130515-" *.*

(아무것도 안 붙은 것들에게, 앞에 20130515- 를 붙여라. 모든 파일에.)

이렇게 해도 접두사(postfix)가 붙네요?

 

접미사(suffix)를 추가하는 것은 사용할 일이 생기면 알아보고 올리겠습니다.

반응형