mv(move)는 「파일·디렉토리 이동」 명령이지만 「이름 변경」도 같은 명령으로.
같은 폴더 내에서 다른 이름으로 mv하면 rename이 됩니다.
기본.
mv source dest — 이동.
mv old.txt new.txt — 이름 변경.
mv file.txt /other/folder/ — 다른 폴더로.
mv *.log logs/ — 와일드카드로 일괄.
디렉토리 이동·이름 변경.
mv dir1 dir2 — dir2가 없으면 dir1을 dir2로 이름 변경.
dir2가 있으면 dir1을 dir2 안으로 이동(dir2/dir1 됨).
의도와 다를 수 있어 주의.
옵션.
-i interactive(덮어쓰기 확인), -n no-overwrite(덮어쓰기 금지), -v verbose(진행 표시), -b backup(덮어쓸 파일 백업).
주의.
1) 같은 파일시스템 안 — rename(빠름, 거의 즉시).
다른 파일시스템 간 — copy + delete(느림, 큰 파일은 시간 걸림).
2) 중간에 끊기면 일부만 옮겨질 수 있음 — 큰 파일은 cp + 확인 후 rm이 안전.
3) rm 같은 사고 — mv * /tmp/(공백 잘못 들어가면 폭주) 같은 실수 주의.
한 줄 요약
mv는 이동·이름 변경.
같은 폴더 내 mv는 rename 효과.
디렉토리는 대상 존재 여부에 따라 의미 다름.
-i 확인, -n 금지, -b 백업 옵션 활용.
더 알아볼 것
- rename 명령 — 정규식 일괄 이름 변경
- mmv — 더 강력한 일괄 이동
- mv vs rsync 차이