Sapphire.
2023. 3. 21. 16:16
1. linux 와일드카드의 정의
Linux 와일드카드는 하나 이상의 문자를 나타내는 데 사용되는 특수 문자 또는 시퀀스입니다. 일반적으로 사용되는 와일드카드는 *(문자 수 제한 없음) 및 ? (단일 문자). 패턴을 기반으로 파일을 선택하거나 조작하는 데 사용되며 많은 Linux 명령과 함께 사용할 수 있습니다. Linux의 와일드카드 패턴에는 최대 길이가 없지만 일부 명령에는 입력 문자열 제한이 있을 수 있습니다.
2. 와일드 카드의 종류
1. *
일치 되는 모든 "문자열"을 찾아주는 명령어
// ls 예시
$ ls * // 현재 디렉토리에 있는 모든 파일 list 출력
$ ls *.c // 현재 디렉토리에 있는 .c 파일 list 출력
$ ls ma* // ma으로 시작하는 현재 디렉토리에 있는 모든 파일 출력
$ ls *aba* // aba가 들어있는 현재 디렉토리에 있는 모든 파일 출력
2. ?
일치 되는 모든 "문자"를 찾아주는 명령어
? 에 들어갈 수 있는 패턴을 설정해주면 ?에 들어갈 문자를 알지 못하더라도 원하는 내용을 출력하거나 삭제할 수 있음
// ls 예시
// 현재 디렉토리에 존재하는 파일 : main.c happy.txt a1 a2 a3
$ ls m???.c // main.c 출력
$ ls a? // a1 a2 a3 출력
$ ls ?? // a1 a2 a3 출력
$ ls ?app?.t?t // happy.txt 출력
3. [ ]
[ ] 안에 있는 caracter들의 패턴에 일치하는 것을 찾아주는 명령어
[ ] 안에 숫자의 패턴을 넣고싶다면 [ 1 - 9 ] 를 넣게 되면 그에 맞게 찾아줌
[ ab ] 이렇게 설정하게 되면, a와 b로 시작하는 것을 찾아줌
// ls 예시
// 현재 디렉토리에 존재하는 파일 : main.c happy.txt a1 a2 a3 a4
$ ls [a]* // a1 a2 a3 a4 출력
$ ls [a][1-4] // a1 a2 a3 a4 출력
$ ls [mh]* // main.c happy.txt 출력
// *[mh] 할 경우에는 m과 h가 들어가 있는 것을 모두 출력해줌
$ ls *[2-4] // a2 a3 a4