이건 작동하지 않아
find / -type d -perm 1000
문제는 그것만 일치한다는 것이다.정밀한허가( 1000
), 하지만 저는 단지찾다출력이 sticky bit
설정되었는지 여부입니다. 다른 권한은 신경쓰지 않습니다...
지금까지 내 솔루션
나는 이것보다 더 좋은 방법이 있어야 한다고 생각합니다.
find / -type d -perm 1001 -or -perm 1002 -or -perm 1003 -or -perm 1004 -or -perm 1005 -or -perm 1006 -or -perm 1007 -or -perm 1010 -or -perm 1011 -or -perm 1012 -or -perm 1013 -or -perm 1014 -or -perm 1015 -or -perm 1016 -or -perm 1017 -or -perm 1020 -or -perm 1021 -or -perm 1022 -or -perm 1023 -or -perm 1024 -or -perm 1025 -or -perm 1026 -or -perm 1027 -or -perm 1030 -or -perm 1031 -or -perm 1032 -or -perm 1033 -or -perm 1034 -or -perm 1035 -or -perm 1036 -or -perm 1037 -or -perm 1040 -or -perm 1041 -or -perm 1042 -or -perm 1043 -or -perm 1044 -or -perm 1045 -or -perm 1046 -or -perm 1047 -or -perm 1050 -or -perm 1051 -or -perm 1052 -or -perm 1053 -or -perm 1054 -or -perm 1055 -or -perm 1056 -or -perm 1057 -or -perm 1060 -or -perm 1061 -or -perm 1062 -or -perm 1063 -or -perm 1064 -or -perm 1065 -or -perm 1066 -or -perm 1067 -or -perm 1070 -or -perm 1071 -or -perm 1072 -or -perm 1073 -or -perm 1074 -or -perm 1075 -or -perm 1076 -or -perm 1077 -or -perm 1101 -or -perm 1102 -or -perm 1103 -or -perm 1104 -or -perm 1105 -or -perm 1106 -or -perm 1107 -or -perm 1110 -or -perm 1111 -or -perm 1112 -or -perm 1113 -or -perm 1114 -or -perm 1115 -or -perm 1116 -or -perm 1117 -or -perm 1120 -or -perm 1121 -or -perm 1122 -or -perm 1123 -or -perm 1124 -or -perm 1125 -or -perm 1126 -or -perm 1127 -or -perm 1130 -or -perm 1131 -or -perm 1132 -or -perm 1133 -or -perm 1134 -or -perm 1135 -or -perm 1136 -or -perm 1137 -or -perm 1140 -or -perm 1141 -or -perm 1142 -or -perm 1143 -or -perm 1144 -or -perm 1145 -or -perm 1146 -or -perm 1247 -or -perm 1350 -or -perm 1351 -or -perm 1352 -or -perm 1453 -or -perm 1454 -or -perm 1555 -or -perm 1556 -or -perm 1657 -or -perm 1660 -or -perm 1661 -or -perm 1662 -or -perm 1663 -or -perm 1764 -or -perm 1765 -or -perm 1766 -or -perm 1767 -or -perm 1770 -or -perm 1771 -or -perm 1772 -or -perm 1773 -or -perm 1774 -or -perm 1775 -or -perm 1776 -or -perm 1777
답변1
하나의 특정 패턴 비트에만 관심이 있으므로 또는 -perm -MODE
구문을 사용할 수 있어야 합니다 -perm /MODE
. 매뉴얼 페이지에서:
-perm -mode
mode
파일에 대한 모든 권한 비트를 설정합니다. 이 형식에서는 기호 패턴이 허용되며 일반적으로 사용하려는 방식입니다. 기호 모드를 사용하는 경우u
,g
또는 를 지정해야 합니다. 몇 가지 예시를 보려면o
참고자료EXAMPLES
섹션을 참조하세요.
-perm /mode
mode
파일에 대한 권한 비트를 설정합니다. 이 형식은 기호 패턴을 허용합니다. 기호 모드를 사용하는 경우u
,g
또는 를 지정해야 합니다. 몇 가지 예시를 보려면o
참고자료EXAMPLES
섹션을 참조하세요. 권한 비트가 설정되지 않은 경우mode
이 테스트는 모든 파일과 일치합니다(여기서의 개념은 의 동작과 일치한다는 것입니다-perm -000
).
사용 예로, 두 개의 디렉터리를 만들고 그 중 하나에 고정 비트를 설정했습니다.
test$ mkdir sticky-bit-test
sticky-bit-test$ mkdir dir-with-sticky
sticky-bit-test$ chmod +t dir-with-sticky/
sticky-bit-test$ mkdir dir-without-sticky
sticky-bit-test$ ls -l
total 8
drwxr-xr-x 2 user group 4096 Jul 19 18:55 dir-without-sticky
drwxr-xr-t 2 user group 4096 Jul 19 18:55 dir-with-sticky
test$ find . -type d -perm -1000
./sticky-bit-test/dir-with-sticky
test$ find . -type d -perm /1000
./sticky-bit-test/dir-with-sticky
보시다시피 두 옵션 모두 고정 비트가 설정된 디렉터리를 올바르게 선택합니다. @ilkkachu가 지적했듯이 둘의 차이점은 다음과 같습니다.이 문제.
답변2
면책조항: 저는 이 책의 현재 저자입니다.생가죽(오른쪽 회전) 이 답변의 끝에 사용된 프로그램입니다.
이 /1000
표기법은 GNU에 대한 것입니다.찾다, 그러나 macOS(및 기타 시스템)에는 해당되지 않습니다. 다음과 같이 변경해야 합니다 +1000
.
find / -type d -perm +1000
그리고오른쪽 회전, 다음과 같이 할 수 있습니다.
rh / 'd && sticky'
명령 은 rh
여기에서 찾을 수 있습니다.github.com/raforg/rawhide