표준 *nix 파일 외에도권한, macOS에도 파일이 있습니다배너, BSD Unix에서 유래되었습니다. macOS에 대한 이러한 플래그 세트는 다음과 같습니다.
UF_NODUMP Do not dump the file. UF_IMMUTABLE The file may not be changed. UF_APPEND The file may only be appended to. UF_OPAQUE The directory is opaque when viewed through a union stack. UF_HIDDEN The file or directory is not intended to be dis-played displayed played to the user. SF_ARCHIVED The file has been archived. SF_IMMUTABLE The file may not be changed. SF_APPEND The file may only be appended to.
스위치는 다르지만 ls에 대한 추가 스위치를 사용하면 다음과 같은 추가 플래그를 볼 수 있습니다.
ls -lo
- BSD 및 macOS의 이전 버전일 수도 있음ls -lO
- 현재 버전의 macOS
다음을 사용하여 플래그를 변경할 수 있습니다 chflags
.FreeBSD 매뉴얼 페이지
이러한 플래그를 변경하는 해당 시스템 호출 chflags
이 있습니다 .lchflags
fchflags
macOS 매뉴얼 페이지
하지만 시스템 호출을 찾을 수 없는 것 같습니다.읽다배너. 확실히 ls
그것들을 얻기 위해 어떤 함수가 호출될까요? 이를 변경할 수 있는 시스템 호출도 현재 상태를 반환할 수 없는 것 같습니다.
내가 무엇을 놓치고 있나요?
(StackOverflow에 속해 있다면 자유롭게 그곳으로 이동하세요.)
답변1
읽기 플래그를 사용할 수 있습니다.stat
macOS 및 BSD에서는 st_flags
필드에 나타납니다.