특정 사용자가 소유 한 모든 파일을 재귀 적으로 숨 깁니다


32

특정 사용자가 소유 한 모든 파일을 찾아서 숨길 수 있습니까? 잘못된 사용자로 여러 가지 작업을 수행했으며 파일의 올바른 소유권을 부여해야합니다.

많은 파일과 디렉토리를 숨길 수있는 재귀적이고 조건적인 방법이 있습니까?

답변:


60

이 휴대용 찾기 명령을 이와 같은 것으로 사용할 수 있습니다.

find . -user old-user -exec chown new-user:new-group {} \;

-iname 옵션을 사용하여 특정 파일을 찾으려면이를 확장 할 수 있습니다 (POSIX는 아니지만 OSX에서 사용 가능)

find . -iname '*.html' -user www-data -exec chown www-data:www-data {} \;

. 는 현재 폴더와 아래를 나타내므로 특정 경로를 기본으로 사용할 수 있습니다.

find /var/www/ -iname '*.html' -user www-data -exec chown www-data:www-data {} \;

내가 찾던 것. 그러나 chown 이후의 옵션 new-user:new-user은 아마도new-user:new-group
Henesnarfel 님이

2
공백이있는 경로를 올바르게 처리하려면 중괄호가 따옴표로 묶어야한다고 생각합니다. 그래서find . -user old-user -exec chown new-user:new-group "{}" \;
Dan Benamy

다른 사람이 특정 사용자가 소유 하지 않은 파일 (해당 사용자가 소유하지 않은 홈 디렉토리에있는 사용자 파일)을 찾는 방법을 찾고 있다면 '!'를 추가 할 수 있습니다. -user other-user반대쪽을 찾으 려면 섹션으로 이동하십시오. 예를 들면 다음과 같습니다 find . ! -user other-user.
Jon

추가 할 때 종종 위의 내용이 더 유용합니다 -group old-group. 당신이 그룹 소유권 (관리자, 직원, sillyothergroupname) 보존 할 수 있습니다 그 방법
brianlmerritt

PS - 대한 Chown은 sudo를 요구할 수있다
brianlmerritt

12

당신이 사용할 수있는

chown --from=CURRENT_OWNER:CURRENT_GROUP -R new_owner:new_group  *

매뉴얼에서 chown --help:

  --from=CURRENT_OWNER:CURRENT_GROUP
                     change the owner and/or group of each file only if
                     its current owner and/or group match those specified
                     here.  Either may be omitted, in which case a match
                     is not required for the omitted attribute.

편집 : 물론 이것은 리눅스 와 대부분의 UNI 에서만 작동합니다 . OSX (BSD 기반)는 @StephenTrapped 솔루션을 참조하십시오.


+1이지만 OSX에서는 작동 chown하지 않습니다 . 옵션이 없으므로 여기를 참조 하십시오 .
terdon

죄송합니다. 태그 osx가 누락되었습니다 :) @StephenTrapped up.
Rik

chown --from=CURRENT_OWNER:CURRENT_GROUP -R new_owner:new_group *폴더 명령에서 숨겨진 파일을 건너 뜁니다. 그러나 chown --from=CURRENT_OWNER:CURRENT_GROUP -R new_owner:new_group .상위 폴더의 숨겨진 파일에서도 작동합니다.
Lashae

3

-h대한 Chown의 옵션은 심볼릭 링크 파일 자체뿐 아니라 대상의 권한을 변경합니다.

symoblic 링크를 사용하여 버전 간을 전환하는 소프트웨어 바이너리 폴더에서이 작업을 수행 할 때 중요 할 수 있습니다.

find . -user old-user -exec chown -h new-user:new-group {} \;

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.