시스템에 대한 변경 사항과 관련하여 이 두 명령 mkdir -p
의 차이점은 무엇입니까 ?install -d
답변1
mkdir -p
와 사이의 주요 차이점은 install -d
디렉토리가 이미 존재하는 경우install -d
소유권 및 파일 모드 비트 만 설정하려고 시도합니다..
install -d
make_dir_parents
통화를preserve_existing
다음으로 설정하세요 .false
mkdir -p
make_dir_parents
호출을preserve_existing
로 설정합니다true
.
preserve_existing
그렇다면 디렉토리가 이미 존재하는 경우 true
함수는 소유권 및 파일 모드 비트를 설정하려고 시도하지 않습니다.
mkdir -p
그리고 install -d
coreutils 에서 똑같은 함수를 호출하세요 make_dir_parents
.
Coreutil 소스:
답변2
우선, mkdir -p
POSIX이지만 install
그렇지 않습니다. 그럼, 우리는부터 시작합니다GNU install
문서:
--directory
( ) 옵션을 부여 하면 각각의-d
install
목차그리고 누락된 상위 디렉토리. 옵션이나 현재 umask에u=rwx,go=rx
관계없이-m
상위 디렉터리는 " "(755) 모드를 사용하여 생성됩니다. 바라보다디렉토리 Setuid 및 Setgid, 상위 디렉터리에서 set-user-ID 및 set-group-ID 비트를 상속하는 방법을 알아보세요.
그리고:
'
-d
'
'누락된 상위 디렉토리를 생성--directory
하고
기본 속성을 제공합니다. 그런 다음 주어진 각 디렉토리가 생성되어 해당 소유자, 그룹 및 모드를 명령줄에 지정된 디렉토리나 기본값으로 설정합니다.
그래서:
- GNU의 경우
install
상위 디렉토리의 권한이 다를 수 있습니다. install
리프 디렉터리의 소유권을 설정할 수 있습니다.