답변:
그래 넌 할수있어:
find /media/d/ -type f -size +50M ! \( -name "*deb" -o -name "*vmdk" \)
POSIX 사양의 설명 :
! 표현 : 기본의 부정; 단항 NOT 연산자
( expression ) : expression이 true이면 true입니다.
expression -o expression : 1 차 교체; OR 연산자 첫 번째 표현이 참이면 두 번째 표현은 평가되지 않습니다.
\
쉘에 의한 평가를 방지하기 위해 여는 괄호와 닫는 괄호 앞에 백 슬래시 ( ) 가 붙습니다 .
-exec
에 대해 수행 하거나 다른 조치를 수행하는 경우 전체 기준 find
을 괄호로 묶어야 \( \)
합니다. 그렇지 않으면 -exec
마지막 -or
기준 에만 적용됩니다 . 그들 모두를 위해 괄호로 묶어 find \( <criterion> -o <criterion> \) -exec <command>
다음과 같이 정규식을 사용할 수 있습니다.
find /media/d -type f -size +50M ! -regex '\(.*deb\|.*vmdk\)'
백 슬래시는 이스케이프 문자입니다. .
단일 문자와 *
일치하고 이전 문자를 0 번 이상 일치시키는 역할을하므로 .*
0 개 이상의 문자 일치를 의미합니다.
-regex
미만의 휴대용입니다-name
.