Linux/Linux OS

파일 관리(복사,이동,삭제)

값진 2021. 4. 2. 16:33

디렉터리 전체 복사

cp -r 디렉터리1 디렉터리2

cp -r 디렉터리1 디렉터리2

 

하위의 모든 디렉터리들을 복사하는 명령어

하위에 디렉터리들이 있다면 -r 을 써준다

 

-->> 에러가 쉽게 난다. 다른 방법을 써보자

cp SUB/* DIR

 sub안에 있는 모든 디렉터리(/*) 들을 DIR에다가 복사하자

 

*** 만약 DIR에 다른 디렉터리들이 있다면 이 방법을 사용할 수 없다.

 

cp a/b .

a 안의 b파일을 지금 b와 같은 이름으로 복사 (. 을 꼭 찍는다)

 

*****

SUB아래에 여러디렉터리가 있을 때,

cp SUB/*COPY 명령어를 수행하면

ls COPY 했을때, SUB까지 전부 복사된 것을 알 수 있다.

(본인 자체를 포함한 복사)

 

본인을 빼고 복사하고 싶다면?

cp -r SUB/* COPY

ls COPY 하면 SUB는 복사되지 않는다. 자신의 하위내용만 복사된다.

 

 

*****

-f: 이동 경로에 같은 이름의 파일이나 디렉토리가 존재하면 덮어쓸 때 묻지 않고 바로 덮어쓴다.

 

-i: 이동 경로에 같은 이름의 파일이나 디렉토리가 존재하면 덮어쓸 때 물어본다.

 

logout하면 alias 사라짐

 

 

파일이동

move -i 파일1 파일2

move -i 파일1 파일2

(-i는 덮어쓰기 할 때 물어봐줘라)

copy는 원본이 그대로 있지만 move는 원본이 없어지고 새로운 파일이 생성된다

잘라내기-붙여넣기 와 똑같은 개념

절대 경로, 상대경로 다 가능하다

 

mv 파일1 파일2 ...파일n 디렉터리

여러개의 파일들을 한번에 지정된 디렉터리로 모두 이동한다.

 

mv l* ..

첫 글자가 'l'로 시작되는 모든 파일을 잘라내어 상위 폴더에 붙여넣기한다.

 

mv 디렉터리1 디렉터리2

디렉터리의 이름을 변경한다.

 

만약. A안에 B가 있고, B안에 여러 폴더가 있는 상태.

mv A B 후 ls B 명령어를 수행하면

B안에 B와 A안에 있던 디렉터리가 나타난다.

 

 

파일 삭제

 

rm -i 파일

rm a.txt 말고 rm-i a.txt 하면 물어보게 된다.

리눅스에 휴지통이 없기 때문에 삭제할때 신중을 기해야 한다.

미리 alias rm = 'rm-i' 옵션을 설정하도록 한다.

 

rmdir은 디렉터리가 비어있을 때 가능하다.

rmdir -ri 디렉터리

ri 옵션을 주면 디렉터리에 있는 모든 내용을 지우면서 (r) 한번 더 물어봐라(i)