Linux 파일 복사 명령(cp) – 파일 작성 날짜도 같이 복사하기

linux Linux

cp명령-디렉토리 복사

명령 형식

cp [옵션] 원본디렉토리 대상대렉토리
cp [옵션] 파일1 파일2 …… 디렉토리

-R” 또는 “-r“옵션

대상 디렉토리(하위 디렉토리 포함)를 특정 디렉토리로 복사합니다. 다음 예시는 대상 디렉토리가 존재하지 않는 경우의 동작입니다.

다음과 같이 원본으로 지정할 디렉토리 001 를 준비합니다. 대상 디렉토리 002는 존재하지 않습니다.
참고로 CentOS는 기본적으로 tree 명령이 설치되어있지 않습니다. 설치가 필요한 경우에는 “sudo yum install tree“로 설치할 수 있습니다.

$ ls -la
drwxrwxr-x. 3 centos centos  65 May 22 08:29 001

$ tree 001

001

├── abc.txt
├── def.txt
├── ijk.txt
└── subdir
    └── subfile1.txt
1 directory, 4 files

다음과 같이 “-R” 옵션을 지정하여 cp 명령을 실행하면 디렉토리 001(하위 디렉토리 포함)을 복사해서 디렉토리 002를 작성합니다.

$ cp -R 001 002
$ ls -la
total 0
drwxrwxr-x. 4 centos centos  28 May 22 08:40 .
drwx------. 4 centos centos 145 May 22 08:37 ..
drwxrwxr-x. 3 centos centos  65 May 22 08:29 001
drwxrwxr-x. 3 centos centos  65 May 22 08:40 002

$ tree 002
002
├── abc.txt
├── def.txt
├── ijk.txt
└── subdir
    └── subfile1.txt

1 directory, 4 files

ls -lR 디렉토리” 명령으로 디렉토리 001002(하위 디렉토리 포함)의 권한, 소유자, 타임 스탬프를 비교해보면 “-R” 옵션만으로 “권한, 소유자, 타임 스탬프”가 복사되지 않는다는 사실을 확인할 수 있습니다. “권한, 소유자, 타임 스탬프” 복사는 “-p” 옵션 지정이 필요하고 소유자를 복사하기 위해서는 “자기 소유 권한” 이거나, “root” 사용자로 실행해야 합니다.

$ ls -lR 001

001:
total 12
-rw-r--r--. 1 user01 centos 44 May 20 12:36 abc.txt
-rw-r--r--. 1 root   root   44 May 22 08:06 def.txt
-rw-r--r--. 1 user01 centos 44 May 20 12:36 ijk.txt
drwxrwxr-x. 2 centos centos 26 May 22 08:30 subdir

001/subdir:
total 0
-rw-rw-r--. 1 centos centos 0 May 22 08:30 subfile1.txt

$ ls -lR 002

002:
total 12
-rw-r--r--. 1 centos centos 44 May 22 08:40 abc.txt
-rw-r--r--. 1 centos centos 44 May 22 08:40 def.txt
-rw-r--r--. 1 centos centos 44 May 22 08:40 ijk.txt
drwxrwxr-x. 2 centos centos 26 May 22 08:40 subdir

002/subdir:
total 0
-rw-rw-r--. 1 centos centos 0 May 22 08:40 subfile1.txt

따라서 속성도 복사하고자 한다면 “cp -R 001 002” 대신 다음과 같이 “sudo cp -Rp 001 002” 명령을 실행합니다.

$ rm -Rf 002
$ ls -la
drwxrwxr-x. 3 centos centos  65 May 22 08:29 001
$ sudo cp -Rp 001 002
$ ls -lR 002
002:
total 12
-rw-r--r--. 1 user01 centos 44 May 20 12:36 abc.txt
-rw-r--r--. 1 root   root   44 May 22 08:06 def.txt
-rw-r--r--. 1 user01 centos 44 May 20 12:36 ijk.txt
drwxrwxr-x. 2 centos centos 26 May 22 08:30 subdir

002/subdir:
total 0
-rw-rw-r--. 1 centos centos 0 May 22 08:30 subfile1.txt

제목과 URL을 복사했습니다