mv 커맨드는 아규먼트로 파일이나 디렉토리 경로 두 개를 받는다.
첫번째 경로는 작업할 대상의 경로, 두번째 경로는 이동할 목적지 또는 변경할 이름이다.
여기서 두번째 경로가 이미 존재하는 디렉토리의 경로일 경우 디렉토리 안으로 이동되고 그렇지 않으면 이름이 변경된다.
- mv [원본 파일 이름] [바뀔 파일 이름]
- mv [원본 디렉토리 이름] [바뀔 디렉토리 이름]
- mv [이동할 디렉토리 이름] [이동할 디렉토리가 도착할 디렉토리 이름]
- mv [옮길 디렉토리의 부모 디렉토리/옮기고자 하는 디렉토리] [옮기는 위치]
이미 존재하는 파일의 이름 바꾸기
reports $ ls
Jul Aug Sep
$ cd Sep /* sep 디렉토리로 이동 */
$ ls /* Sep 디렉토리의 리스트 확인 */
finances.txt performane.txt
/* performane.txt를 performane2.txt 파일로 변경해주자 */
$ mv performane.txt performane2.txt
/* performane.txt = 작업할 대상, performane2.txt = 변경할 이름 */
$ ls
finances.txt performane2.txt
이미 존재하는 디렉토리의 이름 바꾸기
Sep $ cd ..
/* 한단계 위에 있는 부모 디렉토리로 이동 */
$ ls
/* 부모 디렉토리로 이동한 뒤 리스트 확인 */
Jul Aug Sep
$ mv Sep Oct
/* 이미 있는 Sep이라는 디렉토리를 Oct로 이름 변경 */
$ ls
Jul Aug Oct
디렉토리 옮기기
$ mv Jul Aug
/* Jul 디렉토리를 Aug 디렉토리 안으로 이동한다는 뜻 */
$ ls
Aug Oct
$ ls Aug
Jul finance.txt performance.txt
옮긴 디렉토리 다시 꺼내오기
$ ls
Aug Oct
$ ls Aug
Jul finance.txt performance.txt
$mv Aug/Jul .
/* Aug디렉토리 안에 있는 Jul디렉토리를 .(현재위치)로 옮기겠다 */
$ ls
Aug Jul Oct
$ ls Aug
finance.txt performance.txt /* Jul 디렉토리 사라짐 */
+주의사항
mv 커맨드는 똑같은 이름의 파일이 목적지에 있을 경우 아.묻.따 덮어쓴다.
$ ls
reports warning
$ cd warning
/* warning 디렉토리로 이동 */
warning $ ls /* 리스트 확인 */
test1.txt test2.txt
$ cat test1.txt /* test1.txt 파일의 안을 전체 다 보여줘 */
test file 1%
$ cat test2.txt
test file 2%
$ mv test1.txt test2.txt
/*test1 파일을 test2 파일에 덮어쓴다.*/
$ ls
tset2.txt
$ cat test2.txt
test file 1%
/* tset1의 파일이 덮어써지면서 안에 test2에 있던 내용이 test1의 내용으로 덮어써졌다. */
이런 현상을 방지하고 싶다면 i(interactive)옵션을 활용하면 된다. 만약 충돌이 있으면 사용자에게 어떻게 할 것인지를 묻는 것.
$ touch test1.txt /* test1 파일 생성 */
$ ls /* 리스트 확인 */
test1.txt test2.txt
$ mv -i test1.txt test2.txt /* i 옵션을 사용해서 mv 커맨드 사용 */
overwrite test2.txt? (y/n [n])
/* 파일을 덮어쓸 것인지 묻는 멘트가 출력 덮어쓰려면 y, 취소는 n을 입력하자 */
overwrite test2.txt? (y/n [n]) n /* 덮어쓰기 취소 */
not overwritten /* 덮어쓰지 않았다. */
$ ls
test1.txt test2.txt
mv 커맨드를 안전하게 사용하고 싶다면 i 옵션을 꼭 활용하자
'코린이 개념잡기 > 유닉스 커맨드' 카테고리의 다른 글
복사, 붙여넣기, 삭제 :cp, rm (0) | 2024.12.08 |
---|---|
파일 내용 살펴보기 (0) | 2024.12.07 |
CLI 텍스트 에디터 : Vim (1) | 2024.12.07 |
디렉토리와 파일 생성하기 (0) | 2024.12.07 |
필수 디렉토리 (1) | 2024.12.07 |