cp
* 기본 형식
cp (옵션) (원본파일) (대상파일)
이 때 파일 앞에 경로를 지정해서 다른곳에서 가져오거나 붙여넣을 수 있다.
이렇게 경로를 지정해서 다른 곳으로 옮길 수 있다. 만약 작업하는 디렉토리와 복사하고 싶은 파일의 위치가 다르다면 복사하고 싶은 파일 앞에 경로를 입력해주면 복사가 가능하다. 또한 눈치가 빠른사람들은 이름을 변경해서 복사가 가능하다는 것을 알아챘을 것이다.
cp 속성
- cp -a : 파일 및 디렉토리를 원래 상태를 유지하면서 복사한다. 즉, 소스 파일의 모든 속성(파일 권한, 소유자, 타임스탬프 등)을 대상 파일에 복사한다. 재귀적으로 디렉토리를 복사하며 하드 링크를 사용하여 파일을 복사한다. 원본 파일에 대한 변경 사항을 복사본에 반영하지 않으며, 대상 파일이 이미 존재하는 경우 덮어쓴다.
- cp -r : 디렉토리와 그 내용을 재귀적으로 복사한다. 디렉토리의 권한, 소유자, 타임스탬프 및 모드 등은 그대로 복사된다. 하지만 하드 링크 대신 복사를 사용하여 파일을 복사한다. 원본 파일에 대한 변경 사항을 복사본에 반영하지 않는다. 대상 디렉토리가 이미 존재하는 경우 덮어쓴다.
cp 옵션
-f --force: 이름이 중복된다면 대상을 덮어쓴다.
-n --no-clobber: f와 반대로 덮어쓰지 않는다.
-u --update: 대상 파일이 이미 존재하고, 원본 파일보다 수정된 시간이 더 이후일 경우에만 복사한다.
* 공통 옵션 --help
내가 사용하려는 명령어의 옵션이 궁금하다면 명령어 뒤에 --help를 적어보면 사용할 수 있는 항목이 여럿 나온다. 거기서 찾아 적용하면 될 것이다. 영어가 어렵게 돼있는것도 아니라서 찾는데 크게 어려움은 없을 것이다.
이번 포스팅부터 옵션을 중요한 경우가 아니라면 적용 사진을 넘어가도록 하겠다. 옵션이 너무 많기도 하거니와 다 사용하지도 않기 때문이다. 대신 옵션의 정보만 나열해 적어두도록 하겠다.
* 출처 : 리눅스 cp --help
-a, --archive same as -dR --preserve=all
--attributes-only don't copy the file data, just the attributes
--backup[=CONTROL] make a backup of each existing destination file
-b like --backup but does not accept an argument
--copy-contents copy contents of special files when recursive
-d same as --no-dereference --preserve=links
-f, --force if an existing destination file cannot be opened, remove it and try again (this option
is ignored when the -n option is also used)
-i, --interactive prompt before overwrite (overrides a previous -n option)
-H follow command-line symbolic links in SOURCE
-l, --link hard link files instead of copying
-L, --dereference always follow symbolic links in SOURCE
-n, --no-clobber do not overwrite an existing file (overrides a previous -i option)
-P, --no-dereference never follow symbolic links in SOURCE
-p same as --preserve=mode,ownership,timestamps
--preserve[=ATTR_LIST] preserve the specified attributes (default: mode,ownership,timestamps), if possible
additional attributes: context, links, xattr, all
-c deprecated, same as --preserve=context
--no-preserve=ATTR_LIST don't preserve the specified attributes
--parents use full source file name under DIRECTORY
-R, -r, --recursive copy directories recursively
--reflink[=WHEN] control clone/CoW copies. See below
--remove-destination remove each existing destination file before attempting to open it (contrast with --force)
--sparse=WHEN control creation of sparse files. See below
--strip-trailing-slashes remove any trailing slashes from each SOURCE argument
-s, --symbolic-link make symbolic links instead of copying
-S, --suffix=SUFFIX override the usual backup suffix
-t, --target-directory=DIRECTORY copy all SOURCE arguments into DIRECTORY
-T, --no-target-directory treat DEST as a normal file
-u, --update copy only when the SOURCE file is newer than the destination file or when the
destination file is missing
-v, --verbose explain what is being done
-x, --one-file-system stay on this file system
-Z set SELinux security context of destination file to default type
'Linux > Linux 기본 명령어' 카테고리의 다른 글
[Linux 기본 명령어] 파일 생성 명령어와 옵션 (3) vi (0) | 2023.03.06 |
---|---|
[Linux 기본 명령어] 하드 링크와 심볼릭 링크 (ln) (1) | 2023.03.06 |
[Linux 기본 명령어] 파일 생성 명령어와 옵션 (2) cat (0) | 2023.03.05 |
[Linux 기본 명령어] 파일 생성 명령어와 옵션 (1) touch (0) | 2023.03.05 |
[Linux 기본 명령어] 파일의 구성을 자세히 보는 명령어와 옵션 (stat) (0) | 2023.03.05 |