답변:
cp -p
트릭을 수행합니다. Linux의 경우 :
-p
와 동일--preserve=mode,ownership,timestamps
-p
cp가 사본에서 각 소스 파일의 다음 속성 인 수정 시간, 액세스 시간, 파일 플래그, 파일 모드, ACL, 사용자 ID 및 그룹 ID를 권한에 의해 허용 된대로 유지합니다.
그리고 OS X의 경우 :
-p
cp가 권한에서 허용하는대로 수정 시간, 액세스 시간, 파일 플래그, 파일 모드, 사용자 ID 및 그룹 ID와 같이 사본에서 각 소스 파일의 다음 속성을 유지합니다. 리소스 포크를 포함한 액세스 제어 목록 (ACL) 및 확장 특성 (EA)도 보존됩니다.
cp -p
타임 스탬프뿐만 아니라 모드와 소유권 도 유지 되며 FreeBSD 에서는 수정 시간 외에 허용 된대로 액세스 시간, 파일 플래그, 파일 모드, ACL, 사용자 ID 및 그룹 ID도 보존됩니다. «및 OS X에서 추가로»자원 포크를 포함한 확장 된 속성«.
GNU Coreutilscp
에서 사용할 때 사용자 아이디, 그룹 아이디 또는 파일 모드와 같은 속성이 아닌 타임 스탬프 만 보존하기 위해 보존 할 속성 목록을 명시 적으로 지정할 수있는 방법이 있습니다.--preserve
cp --preserve=timestamps source destination
이 구문은 다른 Unices에서 지원되지 않을 수도 있습니다. 대안은 대부분의 설치에서 사용할 수 있는 --times
매개 변수 를 사용하는 것 rsync
입니다.
-p
것이 정답이 아닙니다. -p
소유권 및 모드도 유지합니다. 원하지 않을 수도 있습니다. 질문하지 않았습니다.
Unix 파일 시스템에는 액세스 시간 (atime), 수정 시간 (mtime) 및 inode 변경 시간 (ctime)이 세 번 있습니다. 터치 프로그램으로 액세스 시간과 수정 시간을 변경할 수 있습니다 (예 :
cp orig 사본 -r 원본 복사를 터치
그러나 inode 변경 시간은 변경할 수 없습니다.