"jbossapp" 사용자를 사용하여 이 명령을 사용하여 3분 이상 전에 생성된 ".stat" 파일을 찾았습니다.
find /opt/jboss/* -mmin +3 -name "*.stat"
최근에 이 명령을 사용하는 동안 루트 사용자를 사용하여 디렉터리에 폴더를 만드는 동안 /opt/jboss/
특정 폴더에서 "권한이 거부되었습니다"라는 메시지가 표시되어 검색이 중단됩니다. 루트 권한이 있는 특정 폴더를 어떻게 제외할 수 있습니까?
답변1
사용
find /opt/jboss/* -type f -mmin +3 -name "*.stat" 2>/dev/null
오류 표시를 방지하기 위해 2>/dev/null
표준 오류 출력은 특수 파일로 리디렉션됩니다 ./dev/null
우리는 또한 -type f
찾고 추가했습니다에프에어즈 아일랜드에만 해당됩니다.
디렉토리를 제외하려면 다음과 같이 사용하십시오.
find /opt/jboss/* -path /path/to/exclude -prune -o -type f -mmin +3 -name "*.stat" 2>/dev/null
을 사용할 수도 있습니다 -not -path
.
find /opt/jboss/* -not -path /path/to/exclude -type f -mmin +3 -name "*.stat" 2>/dev/null
루트가 소유한 사용자에 대한 검색 결과를 제외하려는 경우에도 다음과 같이 사용할 수 있습니다.
find . \! -user root .....
답변2
루트 소유 폴더를 제외하려면 찾기를 사용하여 삭제하세요.
find /opt/jboss/. \
-type d ! -name . -owner root -prune -o -type f -mmin +3 -name '*.stat' -print
해석: 최상위 디렉토리 /opt/joss/에서 이름이 "."이지 않고 "root"에 속하는 폴더는 추적되지 않습니다. 그 밖의 모든 경우에는 3분보다 오래되고 확장자가 ".stat"인 일반 파일을 선택하여 인쇄를 표준 출력으로 더욱 제한합니다.