![와일드카드: 문자열을 제외하는 방법은 무엇입니까? (포함되지 않음) [중복]](https://linux55.com/image/185548/%EC%99%80%EC%9D%BC%EB%93%9C%EC%B9%B4%EB%93%9C%3A%20%EB%AC%B8%EC%9E%90%EC%97%B4%EC%9D%84%20%EC%A0%9C%EC%99%B8%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F%20(%ED%8F%AC%ED%95%A8%EB%90%98%EC%A7%80%20%EC%95%8A%EC%9D%8C)%20%5B%EC%A4%91%EB%B3%B5%5D.png)
사용해서 연습하고 있어요와일드카드오늘..재밌네요.
내가 예상한 대로 정확히 작동했던 가장 복잡한 것은 다음과 같습니다.
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*'