리눅스 mv 명령어 사용 방법 (파일 이동)

리눅스 mv 명령어는 move의 줄임말로 기본적으로는 파일 또는 폴더를 이동시키는 명령어입니다. 그렇지만 파일의 이름을 변경(rename)하거나 파일을 덮어쓰는(overwrite) 기능도 제공합니다.

mv

[구문]

mv [옵션] 이동시킬파일 목적지

mv 명령어는 옮기고자 하는 파일과 목적지에 대해 쓰기 권한(w)이 있어야 수행할 수 있습니다.

mv 사용 예시

현재 위치에서 file1을 home 폴더로 옮기는 경우입니다.

$ ls
file1

$ mv file1 /home

$ cd /home

$ ls
file1

현재 위치에서 file1의 이름을 file2로 변경하는 경우입니다.

$ ls
file1

$ mv file1 file2

$ ls
file2

file1을 file2에 덮어쓰기 하는 경우입니다. mv는 기본적으로 덮어쓰기에 대한 확인을 거치지 않고 수행되기 때문에 조심할 필요는 있습니다.

$ ls
file1 file2

$ mv file2 file1

$ ls
file 2

두 개 이상의 파일을 한 번에 옮길 수도 있습니다. 다만 이때 목적지 경로는 하나고, 폴더여야 합니다.

$ ls
file1 file2

$ mv file1 file2 dir

$ cd dir

$ ls
file1 file2

특정 확장자를 모두 옮기고 싶은 경우에는 *를 이용해 패턴을 표현하면 가능합니다. 예를 들어, txt 파일을 모두 옮기는 경우입니다.

$ ls
a.txt b.txt c.txt

$ mv *.txt /home/textFile

$ cd /home/textFile

$ ls
a.txt b.txt c.txt

mv 옵션

-i : 덮어쓰기 등의 이슈가 있는 경우 실행할지 다시 한번 확인 절차를 거칩니다. 확인에 대해 y 또는 n으로 결정합니다.

$ mv -i file1 /home
mv: overwrite '/home/file1'?

-n : 덮어쓰기를 애초에 금지시키는 옵션입니다.

$ pwd
/home

$ ls
file1

$ cd ..

$ ls
file1

$ mv -n file1 /home

$ ls
file1

-b : 만약 중복 파일이 있는 경우 백업 파일을 생성하는 옵션입니다. 이미 있는 파일이면 ~라는 문자를 파일명 뒤에 붙여서 새로운 파일을 하나 백업본으로 생성합니다.

$ ls
file1 file2

$ mv -b file1 file2

$ ls
file2 file2~
반응형

댓글

Designed by JB FACTORY