와일드카드: 문자열을 제외하는 방법은 무엇입니까? (포함되지 않음) [중복]

와일드카드: 문자열을 제외하는 방법은 무엇입니까? (포함되지 않음) [중복]

사용해서 연습하고 있어요와일드카드오늘..재밌네요.
내가 예상한 대로 정확히 작동했던 가장 복잡한 것은 다음과 같습니다.
ls [![:digit:]]*[a-z][0-9][0-9][0-9][aA-zZ]*[![:digit:]]

하지만 실제로는 문자열을 제외할 수 없습니다.
파일만 나열하려면 어떻게 해야 합니까?포함되지"시험"?
다음은 제가 시도한 몇 가지 예입니다.

ls *!("test")*
ls !("test")
ls !=*"test"*
ls !(*"test"*)
ls *^test*
ls *(^test)*
ls (^test)*
ls !test*
ls !*test*
ls *!test*
ls !{test}
ls !*{test}*
ls *!{test}*

답변1

큰 타격을 받은 경우:

$ shopt -s extglob
$ touch a b c test
$ ls !(*test*)
a  b  c

답변2

또는 find다음 명령을 사용할 수 있습니다.

find -type f ! -name '*test*'

관련 정보