반응형
파일 패턴 매칭
파일명 패턴 매칭은 리눅스 및 유닉스 셸에서 파일과 디렉터리(디렉토리)를 선택할 때 사용되는 기법입니다. 이는 특정 규칙이나 패턴에 따라 파일명을 일치시키기 위해 사용되며, 주로 파일을 검색하거나 명령어에 파일명을 인자로 전달할 때 활용됩니다. 셸은 이러한 패턴 매칭을 통해 사용자가 복잡한 파일명을 일일이 지정하지 않고도, 특정 조건에 맞는 파일이나 디렉터리 그룹을 손쉽게 선택할 수 있게 해 줍니다.
주요 패턴 매칭 기호
*
(Asterisk): 0개 이상의 문자와 일치합니다. 예를 들어,*.txt
는 확장자가.txt
인 모든 파일과 일치합니다.?
(Question Mark): 정확히 한 개의 문자와 일치합니다. 예를 들어,?.txt
는 한 개의 문자 다음에.txt
가 오는 파일명과 일치합니다.[]
(Square Brackets): 대괄호 안에 지정된 문자 중 하나와 일치하는 한 개의 문자와 일치합니다. 예를 들어,[abc].txt
는a.txt
,b.txt
,c.txt
와 일치합니다. 범위도 지정할 수 있으므로,[a-z].txt
는 알파벳 소문자 하나와.txt
확장자를 가진 모든 파일과 일치합니다.{}
(Curly Braces): 중괄호를 사용하여 콤마로 구분된 여러 패턴 중 하나와 일치합니다. 예를 들어,{a,b,c}.txt
는a.txt
,b.txt
,c.txt
와 일치합니다. 이 기능은 일부 셸에서 지원되며, brace expansion이라고 합니다.
예시
*.py
: 모든 파이썬 파일을 찾습니다.data?.csv
:data1.csv
,data2.csv
등과 같이,data
다음에 정확히 하나의 문자가 오고.csv
로 끝나는 파일을 찾습니다.[a-zA-Z]*.txt
: 알파벳으로 시작하는 모든 텍스트 파일을 찾습니다.backup_{jan,feb,mar}.tar.gz
:backup_jan.tar.gz
,backup_feb.tar.gz
,backup_mar.tar.gz
와 같이 지정된 목록 중 하나와 일치하는 파일명을 찾습니다.
정리
파일명 패턴 매칭은 리눅스 및 유닉스 시스템에서 파일을 효과적으로 관리하고, 필요한 파일을 빠르게 찾기 위해 사용되는 유용한 기능입니다. 이를 통해 사용자는 복잡한 파일명이나 대량의 파일 중에서도 특정 패턴에 일치하는 파일을 쉽게 식별하고 작업할 수 있습니다. Asterisk, Question Mark, Square Brackets, 그리고 Curly Braces와 같은 패턴 매칭 기호를 사용하여 다양한 검색 조건을 지정할 수 있습니다.
반응형
'Linuxpia > 리눅스 사용 팁' 카테고리의 다른 글
[리눅스 팁] 환경 변수를 출력해주는 printenv 명령어 (34) | 2024.03.25 |
---|---|
[리눅스 팁] 표현식의 평가와 패턴의 확장 (36) | 2024.03.24 |
[리눅스 팁] 한꺼번에 테스트 파일 100개 만들기 (32) | 2024.03.22 |
[리눅스 팁] 비대화형 셸의 사례들 (31) | 2024.03.21 |
[리눅스 팁] 대화형 셸과 비대화형 셸 (37) | 2024.03.20 |