-
cp, rm, mvKAU/Linux 2010. 4. 6. 21:071. 기능
파일을 현재의 위치나 다른 디렉토리로 복사(copy)한다.
2. 문법
# cp [ 옵션 ] 파일명1 파일명2
# cp [ 옵션 ] 파일명(들) 디렉토리
3. 옵션
-a : 가능한 한 원 파일의 구조와 속성을 그대로 복사한다.
-b : 복사할 때 덮어쓰게 되는 파일은 백업을 만든다.
-d : 심볼릭 링크는 심볼릭 링크로 복사한다. 그리고 원본 파일과의 하드 링크 관계를 유지한다.
-f : 복사 위치에 존재하는 파일을 제거하고 복사한다.
-i : 복사 시 같은 이름의 파일이 존재한다면 덮어쓸 것인가 확인한다.
-I : 하드 링크를 만든다.
-P : 원본 파일의 소유자, 그룹, 권한, 시간 기록을 그대로 복사한다.
-R , -r : 파일과 하위 디렉토리에 포함된 파일 모두를 복사한다.
-s : 디렉토리가 아닌 파일의 심볼릭 링크를 만든다. 소스 파일의 이름은 전체 경로 이름으로 한다. 목적지 파일 이름은 전체 경로를 주지 않아도 현재 디렉토리로 간주되므로 상관없다.
-u : 파일의 정보를 갱신한다.
-x : 다른 파일 시스템인 하위 디렉토리는 무시한다.
4. 사용방법 및 정보
가) 만일 파일명2가 이미 존재하는 파일의 이름이라면 기존에 있던 파일은 사라지고 새로운 복사본 파일로 바뀐다. 안전을 위해 i 옵션이 환경변수로 설정되어 있다. -i 옵션은 파일명2가 이미 존재하는 이름이라면 그대로 복사할 것인지 아닌지를 선택할 수 있게 물어온다.
<shell>
[root@sense ~]# cp -i file1 file2
cp: overwrite `file2'? y
</shell>
나) 여러 파일을 한 번에 복사할 수도 있다.
<shell>
[root@sense ~]# mkdir copydirectory
[root@sense ~]# cp file file1 file2 copydirectory/
[root@sense ~]# ls copydirectory/
file file1 file2
</shell>
다) -r 옵션을 통해 하위 디렉토리의 파일까지 복사할 수 있다.
<shell>
[root@sense ~]# cp -r commands copydirectory/
[root@sense ~]# ls copydirectory/
anaconda-ks.cfg commands.html copydirectory docs file1
commands commands index.html Desktop file file2
[root@sense ~]#
</shell>
rm [옵션] 파일or디렉토리
옵션 설명
-f 삭제할 파일에 대해 지울것인지 물어보지 않고 강제로 지웁니다.
-r 디렉토리와 하위 디렉토리 및 파일을 모두 지웁니다.
-v 지워지는 파일의 정보를 보여줍니다.
-i 지울 건지 확인 하고 지운다.
mv [옵션] 원본 대상
옵션 설명
-b 대상 파일이 있는 경우에 덮어 쓰기 전 백업 파일을 만듭니다.
-f 대상 파일이 있어도 강제로 덮어씁니다.(대상은 삭제됩니다.)
-u 대상 파일이 있는 경우에 원본이 최근의 것일때만 덮어씁니다.
-v 파일의 이동 과정을 자세하게 보여줍니다.
-i 같이 이름의 파일이 있을 경우 덮을 쓸지를 물어본다.