일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- Qmail
- 코스피
- adb
- Android
- ubuntu
- 도서
- 안드로이드
- java
- Algorithm
- UX
- KOSPI
- 보안
- Eclipse
- 우분투
- unix
- conemu
- uml example
- eclipse35
- Linux
- Audacity
- IT 키워드
- 태터수정
- IPTV
- 알고리즘
- 작성중
- 주식
- LDAP
- 공매도
- 기술사
Archives
- Today
- Total
Do diffence
[Unix] mv 명령 본문
1. 파일 이름 변경
mv로 해당 파일을 이동, 이름 변경을 해도 해당 파일의 inode는 변함이 없다.
2. 디렉토리 이름 변경
디렉토리 이름도 마찬가지로 inode 값이 변경되지 않는다.
3. 프롬프트로 묻기
-i 옵션을 사용하면 명령 실행전에 프롬프트로 묻는다.
mv로 해당 파일을 이동, 이름 변경을 해도 해당 파일의 inode는 변함이 없다.
cd /tmp
touch test.txt
$ ls -i test.txt
2097274 test.txt
$ mv test.txt test_1.txt
$ ls -i *.txt
2097274 test_1.txt
2. 디렉토리 이름 변경
디렉토리 이름도 마찬가지로 inode 값이 변경되지 않는다.
/tmp$ mkdir dir1
/tmp$ ls -ild dir1
2097275 dir1
/tmp$ mv dir1 dir2
/tmp$ ls -ild dir2
2097275 dir2
3. 프롬프트로 묻기
-i 옵션을 사용하면 명령 실행전에 프롬프트로 묻는다.
만약 덮어쓰려는 파일의 퍼미션이 다르면 아래와 같이 묻늗다.$ mv -i test.txt test_1.txt
mv: overwrite `test_1.txt'?
$ mv -i test.txt test_1.txt
mv: `test_1.txt'를 overriding mode 0555 (r-xr-xr-x)로 덮어쓰기를 시도할까요?
4. 여러 파일을 특정 디렉토리로 옮기기.mv *.xml ../xml
5. 덮어 쓰기 전에 백업하기
--suffix 옵션을 사용하면 덮어 쓰기 전에 해당 파일의 확장자를 suffix로 주어 백업할 수 있다.
$ mv --suffix=.bak test.txt test_1.txt
$ ls -l
-rw-r--r-- 1 gtko gtko 0 2011-02-01 02:26 test_1.txt
-rw-r--r-- 1 gtko gtko 0 2011-02-01 02:20 test_1.txt.bak
6. 중복되지 않는 파일만 옮기기.
mv * 를 사용하면 모든 파일을 이동한다. 그런데 이동하는 곳에 없는 파일만 옮기려면 mv -u 옵션을 사용하면 된다.
$ ls dir1
file1 file2 file3
$ ls dir2
file2 file3 file4
$ mv -u dir1/* dir2/
$ ls dir2
file1 file2 file3 file4
7. 디렉토리내의 00.mp3 형식을 a00.mp3 형식으로 모두 변경
for F in *.mp3; do mv $F a$F; done
참조
http://www.thegeekstuff.com/2010/12/mv-command-examples/?utm_source=feedburner&utm_medium=email&utm_campaign=Feed%3A+TheGeekStuff+%28The+Geek+Stuff%29