Snow flake

[command] mv 명령어 본문

Programming/Linux

[command] mv 명령어

MAYSON 2022. 10. 24. 06:30

mv 명령어는 Move의 약자로, 디렉토리나 파일의 경로를 이동시키거나 이름을 바꾸는 명령어입니다. 

# 사용법
mv [원본 디렉토리, 파일] [사본 디렉토리, 파일]

# 현재 디렉토리의 ori.txt 라는 파일을 현재 디렉토리의 ori_dir 로 이동
mv ori_txt ori_dir

# 현재 디렉토리의 ori.txt 라는 파일의 이름을 sec.txt 로 변경
mv ori.txt sec.txt

# 현재 디렉토리의 ori.txt 라는 파일의 이름을 sec.txt로 변경하고, ori_dir 로 이동
mv ori.txt ori_dir/sec.txt

이렇게 파일을 이동하거나 이름을 바꾸는게 가능하고, 경로이동과 동시에 파일명을 바꿔주는 것도 가능합니다. 절대경로와 상대경로를 구분하기에 주의가 이동시에는 주의가 필요합니다.

 

옵션을 사용하지 않고 옮길 경우에 원본경로, 옮겨질 경로는 필수 인자입니다.

# mv 옵션

# -b : 이동 될 경로에 파일이 이미 존재한다면 백업파일을 만듬
mv -b /home/apple.txt /home/fruits/apple.txt

# -f : 이동 될 경로에 파일이 이미 존재한다면, 강제로 덮어씌움
mv -f /u01/ori_data.fn /u01/re_data.fn

# -i : 이동 될 경로에 파일이 이미 존재한다면, 덮어씌울지 여부를 물음
mv -i /home/index.jsp /home/index/index.jsp

# -n : 이동 될 경로에 파일이 이미 존재한다면, 이동시키지 않음
mv -n /u01/ora19 /u01/ora19

# -r : 원본에 존재하는 하위 디렉토리를 포함해 이동시킴
mv -r /home/oracle /u01

이 외에도 여러 옵션들이 있습니다. rm 이나 cp 명령어처럼 강제로 덮어씌울 경우 덮어씌어진 파일의 복구가 어렵기 때문에 주의가 필요합니다.

 

한 번의 커맨드로 여러 대상을 한 번에 이동시키거나, * 를 활용해 모든 파일을 이동시키는 거나, 특정 확장자를 지닌 파일만 이동시키는 것도 가능합니다.

# 복수의 디렉토리, 파일을 복사
# mv [파일1] [파일2] [파일3] [이동 될 경로]
mv apple.txt banana.txt orange.txt /home/likes/fruits

# 현재 경로에 있는 모든 디렉토리, 파일을 /u01 로 이동
mv * /u01

# .sql 확장자를 지닌 파일을 현재 경로의 sql_dir 디렉토리로 이동
mv *.sql sql_dir

'Programming > Linux' 카테고리의 다른 글

[command] pwd 명령어  (0) 2022.10.26
[command] id 명령어  (0) 2022.10.25
[command] cp 명령어  (0) 2022.10.23
[command] rm 명령어  (0) 2022.10.11
[command] touch 명령어와 TIMESTAMP  (0) 2022.10.09
Comments