특정 권한으로 파일을 검색하는 방법


8

특정 권한이있는 파일을 어떻게 검색 할 수 있습니까? 예를 들어, 10000 개의 파일이 있고 READ ONLY 플래그가있는 파일을 찾고 싶습니다. 다른 경우에는 특정 소유자가있는 다른 것을 검색하고 싶습니다. 또는 다른 파일에서 읽기 전용 및 실행 파일을 볼 수 있습니다.

답변:


9

find디렉토리 트리를 재귀 적으로 검색 할 수 있는 명령 을 사용하는 것이 가장 쉬운 방법 일 것 입니다. 예를 들어, 특히 읽기 전용 인 파일을 찾으려면 다음을 입력하십시오.

find <specify location> -type f -perm -444

특정 사용자에게 속한 파일의 경우

find <location> -type f -user mike

실행 파일 (전체)을 사용할 수 있습니다

find <location> -type f -perm -777

실행 가능하고 읽기 전용 인 경우 위의 예에서 777 대신 555를 사용합니다. 또한 대체하여 그룹에 속하는 파일을 검색 할 수 있습니다 -user mike에 대한 -group mike.

검색어를 부정하고 정확한 반대 단어를 검색하려면 다음과 같이 느낌표를 사용할 수 있습니다.

find <location> -type f ! -perm -444 

참고 : 권한 앞에 대시를 지정하면 (예 :) -perm -444읽기 전용 플래그가있는 모든 파일을 찾을 수 있으며 444 인 파일 만 찾을 수 없습니다. 444 만 정확하게 검색하려면 대시 (예 :)를 제거하면 -perm 444됩니다.

주 2 : 권한의 조합이 잘 사용으로 추구 할 수 -a과 및 -o또는; 예를 들어, 이러한 권한을 정확하게 찾으려면 다음을 입력하십시오.

find <location> -type f -perm 744 -o -perm 666

로 디렉토리를 검색 할 수 있습니다 -type d.

man find사용 가능한 다른 순열을 참조하십시오 .


+1 사이의 차이에 대해 언급을위한 -444과444
— Fr0zenFyr

나를 위해, -perm -444이 파일을 발견 read허가하지 읽기 전용되는 (의미없는 이들 만 read 하고 다른 권한).
— Jānis Elmeris
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.