mv — 리눅스 기본 명령어
Linux / 리눅스 기본 명령어 / mv.html
파일이나 디렉토리를 이동하거나 이름을 변경하는 명령어.
기본 정보
| 명령어 이름 | mv (move) |
|---|---|
| 한 줄 소개 | 파일이나 디렉토리를 이동하거나 이름을 변경하는 명령어. |
| 제공 | GNU coreutils (모든 Linux 배포판 기본 탑재) |
| 공식 문서 | https://man7.org/linux/man-pages/man1/mv.1.html |
| 지원 운영체제 | Linux, macOS, BSD, WSL |
| 설치 여부 | 기본 탑재 (별도 설치 불필요) |
| 분류 | 리눅스 기본 명령어 (태그: 파일 이동, 이름 변경, 리눅스, 기본) |
이 명령어는 무엇인가?
mv는 move의 약자로, 파일이나 디렉토리를 다른 위치로 이동하거나 이름을 변경하는 명령어입니다. 같은 파일 시스템 안에서는 메타데이터만 변경하므로 매우 빠릅니다.
이름 변경(rename)과 위치 이동을 모두 처리하므로, 리눅스에서는 두 작업이 같은 명령어로 이루어집니다.
어떤 문제를 해결하는가?
- 파일을 다른 디렉토리로 옮깁니다.
- 파일 이름을 변경합니다.
- 디렉토리 이름을 바꿉니다.
- 불필요한 파일을 안전하게 이동해 정리합니다.
주요 기능
파일 이동
파일을 다른 디렉토리로 이동합니다.
- 활용 상황: 작업 후 파일을 정리·배치할 때.
- 얻는 결과: 원래 위치에서 사라지고 새 위치에 나타납니다.
- 제한 사항: 대상 위치에 같은 이름 파일이 있으면 덮어씁니다.
이름 변경
같은 디렉토리 안에서 파일 이름을 변경합니다.
- 활용 상황: 파일명을 실수로 잘못 지었을 때.
- 얻는 결과: 파일 내용은 그대로이고 이름만 바뀝니다.
- 제한 사항: 대상 이름의 파일이 이미 있으면 덮어씁니다.
덮어쓰기 방지 (-n)
같은 이름 파일이 있으면 건너뜁니다.
- 활용 상황: 실수로 기존 파일을 덮어쓰지 않으려 할 때.
- 얻는 결과: 기존 파일이 보호됩니다.
- 제한 사항: 건너뛴 알림이 없으므로 주의가 필요합니다.
백업 모드 (-b)
덮어쓰기 전에 원본의 백업을 생성합니다.
- 활용 상황: 중요한 파일을 교체할 때 안전장치가 필요할 때.
- 얻는 결과: 원본이 .~ 뒤 붙는 이름으로 보관됩니다.
- 제한 사항: 디스크 공간을 약간 더 사용합니다.
설치 및 실행
기본 탑재 확인
모든 Linux 배포판에 기본 포함되어 있습니다.
which mv
mv --version
별도 설치 (경량 환경)
일반적으로 이미 설치되어 있습니다.
sudo apt install coreutils # Debian/Ubuntu
실제 사용 예제
기본 이동 및 이름 변경
파일을 이동하거나 이름을 변경합니다.
# 파일 이동
cd /home/user/reports
mv report.txt /var/backups/
# 이름 변경
mv old-name.txt new-name.txt
# 디렉토리 이름 변경
mv project-old project-new
여러 파일 이동
여러 파일을 한 번에 이동합니다.
# 특정 확장자 파일 모두 이동
mv *.log /var/log/app/
# 여러 파일을 디렉토리로 이동
mv file1.txt file2.txt file3.txt /tmp/archive/
안전한 이동 (덮어쓰기 방지)
기존 파일을 보호하며 이동합니다.
# 같은 이름이 있으면 건너뜀
mv -n new-config.txt /etc/app/
# 덮어쓰기 전 백업 생성
mv -b updated-file.txt /etc/app/file.txt
# 백업 파일 확인
ls /etc/app/file.txt.~