find コマンド - 固定ビットが設定されているすべてのディレクトリのリスト

find コマンド - 固定ビットが設定されているすべてのディレクトリのリスト

これはうまくいきません

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

1つの特定のパターンビットにのみ興味があるため、または-perm -MODE構文を使用できる必要があります-perm /MODE。マニュアルページから:

-perm -mode

modeファイルのすべての許可ビットを設定します。この形式では、シンボルパターンが許可され、一般的に使用したい方法です。シンボルモードを使用する場合はugまたはを指定する必要があります。いくつかの例については、参考o資料のEXAMPLESセクションをご覧ください。

-perm /mode

modeファイルの許可ビットを設定します。この形式はシンボルパターンを受け入れます。シンボルモードを使用する場合はugまたはを指定する必要があります。いくつかの例については、参考o資料のEXAMPLESセクションをご覧ください。許可ビットが設定されていない場合、modeこのテストはすべてのファイルと一致します(ここの概念はの動作と一致することです-perm -000)。

使用例として、2つのディレクトリを作成し、そのうちの1つに固定ビットを設定しました。

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つの違いは次のとおりです。この問題

おすすめ記事