티스토리 뷰

1. rename 사용하기

 

$ rename arg1 arg2 arg3

-arg1 : 바꾸고자하는 문자

-arg2 : 바꾸고자하는 문자를 대체하는 문자

-arg3 : 대상 파일

 

ex) rename before after berofe*

before로 시작하는 파일 이름을 after로 시작하는 파일 이름로 바꾸어 줌

 

2. find, sed 사용하기

$ find /var -name "*.before*" | sed -e 'p' -e 's/.before/.after/g' | xargs -n 2 mv

'/var' 디렉터리에서 'before'라는 문자가 포함된 파일을 찾아 이름을 'after'로 변경해서 파일을 저장해 준다.

기존 파일을 유지할려면 'mv'를 'cp'로 하면 된다.

 

sed에서 첫번째 편집 구문'p'는 이전에 find에서 찾은 것 다시 한 번 보여준다.

두번째 편집구문에서는 치환을 시켜준다.

결과적으로 원래 파일명과 치환 후 파일명이 연달아 출력된다.

 

 

...before01...

...after01...

...before02...

...after02...

...before03...

...after03...

 

다중 편집(-e) 순서는 꼭 지켜야한다.

 

xargs -n option을 통해 인자값 수를 2로 조정해서 두개의 값을 받고

mv 로 넘겨준다.

댓글