cp -r
의 차이점을 찾고 있습니다 cp -a
. 폴더에서 파일을 복사할 때 "재귀적"이란 무엇을 의미합니까?
답변1
재귀는 cp
디렉터리의 내용을 복사하는 것을 의미하며, 디렉터리에 하위 디렉터리가 있으면 해당 하위 디렉터리도 (재귀적으로) 복사됩니다. 그렇지 않은 경우 명령 -R
은 cp
디렉터리를 건너뜁니다. -r
Linux와 동일 -R
하지만 일부 다른 UNIX 변형의 일부 경우에는 다릅니다.
기본적으로 cp
새 파일은 이전 파일과 동일한 내용과 권한으로 생성되지만 다음 사항이 적용됩니다.마스크;복사본은 복사한 시점부터 작성되었으며 사본을 만든 사용자에게 속합니다. 이 -p
옵션을 사용하면 복사본은 원본과 동일한 수정 시간, 액세스 시간 및 권한을 갖습니다. 복사를 수행하는 사용자에게 해당 파일을 생성할 수 있는 권한이 있는 경우 해당 파일도 원본 파일과 동일한 소유자 및 그룹을 갖게 됩니다.
이 -a
옵션은 -R
및 -p
기타 저장 옵션을 의미합니다. 동일한 디렉터리 트리, 동일한 파일 유형, 동일한 콘텐츠, 동일한 메타데이터(시간, 권한, 확장 속성 등) 등 가능한 한 원본에 가까운 복사본을 만들려고 합니다.
답변2
"재귀적" -r 또는 -R 옵션은 하위 폴더 내의 파일을 포함하여 모든 파일을 복사한다는 의미입니다.
나열된 -a 옵션은 -dR과 동일합니다. 이는 링크를 보존하고 하위 디렉토리의 내용을 복사한다는 의미입니다. 링크를 유지한다는 것은 재귀적으로 복사할 때 링크를 따르지 않는다는 의미입니다.
답변3
-r=-R
-a=-dR --preserve=all
-d=--no-dereference --preserve=links
그 다음에:
-r=-R
-a=-R --no-dereference --preserve=links --preserve=all