본문 바로가기
IT/리눅스 명령어

리눅스 기본 명령어 rename 예제 사용법 리눅스 파일이름 바꾸기

by 꾸꾸웍스 2022. 8. 13.
반응형

 

 

리눅스 rename 명령어란?

 

리눅스 rename 명령어란?

리눅스 기본 명령어 rename은 파일 이름을 변경하는 명령어입니다. 흔히 파일 및 디렉토리의 이름을 변경할 때 사용하는 mv 명령어를 사용하지만 rename의 명령어는 규칙적인 이름을 가진 파일들을 와일드카드를 이용해 일괄 변경할 수 있는 장점이 있고 확장자의 변경도 가능합니다.

 

 

리눅스 rename 사용법

 

리눅스 rename 명령어 사용법

 

   $ rename [options] expression replacement file...

rename [옵션] [표현(적용할범위)] [교체할문자] [파일]

 

root@server # ls -l
-rw-r--r-- 1 root root 24 Aug 11 14:36 apple

root@server # rename apple banana apple

root@server # ls -l
-rw-r--r-- 1 root root 24 Aug 11 14:36 banana

 

 

 

 

리눅스 rename 예제

 

✔ rename 예제 - 파일 이름 변경하기

root@server # ls -l
-rw-r--r-- 1 root root 24 Aug 11 14:36 test1

root@server # rename test1 test2 test1

root@server # ls -l
-rw-r--r-- 1 root root 24 Aug 11 14:36 test2

   $ rename test1 test2 test1

리눅스 rename 명령어로 test1 파일을 test2로 파일 이름을 변경하는 예제입니다.


 

 rename 예제 - 파일 이름 일부만 변경하기

root@server # ls -l
-rw-r--r-- 1 root root 24 Aug 11 14:36 test2

root@server # rename test file test2

root@server # ls -l
-rw-r--r-- 1 root root 24 Aug 11 14:36 file2

   $ rename test file test2

리눅스 rename 명령어로 test2 파일 이름의 test를 file로 변경하는 예제입니다.


 

 rename 예제 -규칙성 있는 파일 전체 변경

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 11 15:24 file1
-rw-r--r-- 1 root root 0 Aug 11 15:24 file2
-rw-r--r-- 1 root root 0 Aug 11 15:24 file3
-rw-r--r-- 1 root root 0 Aug 11 15:24 file4
-rw-r--r-- 1 root root 0 Aug 11 15:24 file99

root@server # rename file file0 file?

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 11 15:24 file01
-rw-r--r-- 1 root root 0 Aug 11 15:24 file02
-rw-r--r-- 1 root root 0 Aug 11 15:24 file03
-rw-r--r-- 1 root root 0 Aug 11 15:24 file04
-rw-r--r-- 1 root root 0 Aug 11 15:24 file99

   $ rename file file0 file?

리눅스 rename 명령어로 file1~5의 파일의 숫자 한 자릿수를 앞에 0을 붙여 숫자를 두 자릿수로 만드는 예제입니다. rename의 명령어 파일 자리에 file?의 물음표의 의미는 한 자릿수를 의미하여 file뒤에 붙은 한자리수의 파일전체를 의미합니다.

 

리눅스 와일드카드의 물음표 한자리는 한자리수를 나타내며 두자리는 ??, 세자리는 ???입니다. 또한 와일드카드의 *의 의미는 한자리 이상을 포함한 모두를 나타내는 의미입니다.


 

 rename 예제 - 와일드카드 *

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 11 15:31 file0001
-rw-r--r-- 1 root root 0 Aug 11 15:31 file001
-rw-r--r-- 1 root root 0 Aug 11 15:31 file01
-rw-r--r-- 1 root root 0 Aug 11 15:31 file1

root@server # rename file file11 file??

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 11 15:31 file0001
-rw-r--r-- 1 root root 0 Aug 11 15:31 file001
-rw-r--r-- 1 root root 0 Aug 11 15:31 file1
-rw-r--r-- 1 root root 0 Aug 11 15:31 file1101

root@server # rename file file99 file*

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 11 15:31 file990001
-rw-r--r-- 1 root root 0 Aug 11 15:31 file99001
-rw-r--r-- 1 root root 0 Aug 11 15:31 file991
-rw-r--r-- 1 root root 0 Aug 11 15:31 file991101

   $ rename file file11 file??

리눅스 rename 명령어로 file01의 파일을 file1101로 변경하는 예제입니다.

 

   $ rename file file99 file*

리눅스 rename 명령어로 file로 시작하는 모든 파일을 file99로 시작하는 파일로 모두 변경하는 예제입니다.

 

 

반응형

 

 

리눅스 rename 옵션

 

번호 옵션 long옵션 설명
1 -v --verbose 파일 이름이 변경되면 화면에 출력합니다.
2 -V --version rename 명령어의 버전을 출력합니다.
3 -s --symlink 심볼릭링크 대상의 파일의 이름을 변경합니다.
4 -h --help rename 명령어의 사용법을 출력합니다.

 

 

리눅스 rename 옵션 사용법

 

$ rename -v 옵션

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 0 15:44 test1

root@server # rename -v test1 apple1 test1
`test1' -> `apple1'

root@server # rename --verbose apple1 file1 apple1
`apple1' -> `file1'

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 0 15:44 file1

 

rename -v 옵션은 verbose의 약자로 파일 이름이 변경되면 파일이 변경되었다는 메시지가 출력이 됩니다. 만약 rename -v 옵션을 사용하는 중 파일이 존재하지 않거나 파일명이 잘못되었을 때는 메시지가 출력되지 않습니다.

 

 

$ rename -v 옵션

root@server # rename -V
rename from util-linux 2.23.2

root@server # rename --version
rename from util-linux 2.23.2

 

rename -V 옵션은 version의 약자로 rename 명령어의 버전을 출력하는 명령어입니다.

 

 

$ rename -s 옵션

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 0 15:54 test1

root@server # cat test1
This is a test file.

root@server # ln -s test1 test2

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 0 15:54 test1
lrwxrwxrwx 1 root root 0 Aug 0 15:56 test2 -> test1

root@server # cat test2
This is a test file.

root@server # rename -s test test0 test2

root@server # ls -l
-rw-r--r-- 1 root root 0 Aug 0 15:54 test1
lrwxrwxrwx 1 root root 0 Aug 0 15:56 test2 -> test01

root@server # cat test2
cat: test2: No such file or directory

 

rename -s 옵션은 symlink의 약자로 심볼릭 링크의 대상의 이름을 변경하는 옵션입니다. test1 파일은 "This is a test file"이 저장되어 있고 test2가 test1을 바라볼 수 있게 심볼릭 링크를 ln 명령어로 생성하였습니다. 이후 rename -s 옵션을 이용하여 test2의 내용을 변경하려고 했지만 바라보고 있는 test1의 대상의 파일 이름이 변경되어 test2는 파일을 열 수가 없는 상황이 되었습니다. rename -s 옵션은 잘 사용하지 않으며 흔히 mv를 이용해 심볼릭 링크 파일을 변경하지만 링크를 새로 생성하거나 rename으로 다시 원상복구를 하여 파일을 복구할 수 있습니다.

 

 

$ rename -h 옵션

root@server # rename -h

Usage:
 rename [options] expression replacement file...

Options:
 -v, --verbose    explain what is being done
 -s, --symlink    act on symlink target

 -h, --help     display this help and exit
 -V, --version  output version information and exit

For more details see rename(1).

root@server # rename --help

Usage:
 rename [options] expression replacement file...

Options:
 -v, --verbose    explain what is being done
 -s, --symlink    act on symlink target

 -h, --help     display this help and exit
 -V, --version  output version information and exit

For more details see rename(1).

 

rename -h 옵션은 help의 약자로 rename 명령어의 사용법을 출력합니다.

 

 

반응형
그리드형

댓글