특정 사용자가 소유 한 모든 파일을 찾아서 숨길 수 있습니까? 잘못된 사용자로 여러 가지 작업을 수행했으며 파일의 올바른 소유권을 부여해야합니다.
많은 파일과 디렉토리를 숨길 수있는 재귀적이고 조건적인 방법이 있습니까?
답변
이 휴대용 찾기 명령을 이와 같은 것으로 사용할 수 있습니다.
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 --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 솔루션을 참조하십시오.
답변
-h
대한 Chown의 옵션은 심볼릭 링크 파일 자체뿐 아니라 대상의 권한을 변경합니다.
symoblic 링크를 사용하여 버전 간을 전환하는 소프트웨어 바이너리 폴더에서이 작업을 수행 할 때 중요 할 수 있습니다.
find . -user old-user -exec chown -h new-user:new-group {} \;