2010-12-07 9 views
60

私のディレクトリに読み込み不可能なファイルを探したいとします(g-rを含むファイルなど)。だから私はこれを試してみました:パーミッションが設定されていないときに `find -perm`を使用して検索する

find . -perm -g-r

それは私のすべてのファイルを示し??だから私はこの試みた:

find . -perm -g+r

をそして、それは私にのみ読み込み可能なファイルを示しました。 -perm -g-rはすべてのファイルと一致しているようです。私はCentOS 5.5を使用しています。私は何か間違っているのですか? -perm -g-rは役に立ちません。

答えて

83

試してみてください。

find . ! -perm -g+r

+3

それがうまくいった!私はまだ動作しない '-perm -g-r'によって謎に包まれていますが、まあまあです。 – User1

+0

実行可能でないファイルを見つけることは明らかな拡張です。ありがとう! –

+0

検索をディレクトリではなくファイルに限定し、 '-maxdepth'を2にしたいのですが?パーマを否定するにはどうしたらいいですか?編集:気にしないでください。 !で任意のオプションを否定することができます。最初はうまくいきませんでしたが、それは本当にありました。私は 'find -maxdepth 2! -perm -g + r -type d'を実行し、グループ読み取り許可のないディレクトリの深さを2に設定しました。 –

21

あなたにより非読めるファイルを検索したい場合は、あなたはすべてのファイルを見ることができました

find . ! -readable 
+6

これはLinuxでも動作しますが、MacでBSD find(2008年以降)ではサポートされていません。 –

+0

良い点。おそらく、読めるようにサポートしていないバージョンがたくさんあります。 – Charley

-3

を使用することができますあなたが下の命令を実行したときに、それはrootとして実行していたからです。

find . -perm -g-r 

通常のユーザーとして実行してください。

+7

ファイルの属性(アクセス許可、所有権、サイズなど)はユーザーに依存しません。あなたの答えは間違っていると思います。 –

+0

また、OPは、ティム・クーパーの答えとあなたのミスを決めるビット*を見つける方法を尋ねました。 –

関連する問題