와일드카드 패턴은 리눅스에서 파일이나 디렉토리의 이름을 지정할 때 특정 패턴에 맞는 파일들을 쉽게 선택할 수 있도록 도와주는 강력한 기능입니다. 이 기능은 특히 파일을 검색하거나 작업을 수행할 때 매우 유용합니다. 이 강의에서는 와일드카드 패턴에 대해 설명하고, 실습 예제와 함께 사용법을 익혀보겠습니다.
와일드카드 패턴은 파일 이름을 검색할 때 사용되는 메타문자입니다. 와일드카드는 특정 문자나 문자 집합을 대체하여 파일 이름의 일부분을 쉽게 지정할 수 있도록 합니다. 리눅스에서 주로 사용하는 와일드카드 패턴은 다음과 같습니다:
*
(별표)
*
는 0개 이상의 모든 문자와 일치합니다.*.txt
는 .txt
확장자를 가진 모든 파일과 일치합니다.?
(물음표)
?
는 정확히 1개의 문자와 일치합니다.file?.txt
는 file1.txt
, fileA.txt
와 일치하지만, file12.txt
와는 일치하지 않습니다.[]
(대괄호)
file[12].txt
는 file1.txt
, file2.txt
와 일치하지만, file3.txt
와는 일치하지 않습니다.[!...]
또는 [^...]
(부정 대괄호)
file[!1].txt
는 file2.txt
, file3.txt
와 일치하지만, file1.txt
와는 일치하지 않습니다.{}
(중괄호)
file{1,2}.txt
는 file1.txt
, file2.txt
와 일치합니다.와일드카드는 ls
, cp
, mv
, rm
등 다양한 명령어에서 사용할 수 있습니다. 아래의 실습 예제를 통해 각각의 와일드카드 패턴을 사용하는 방법을 알아보겠습니다.
*
(별표) 실습ls *.txt
.txt
확장자를 가진 모든 파일을 나열합니다.example.txt
, notes.txt
등과 같은 .txt
파일들이 출력됩니다.ls file*
file
로 시작하는 모든 파일을 나열합니다.file1.txt
, fileA.txt
, filename.csv
등이 출력됩니다.?
(물음표) 실습ls file?.txt
file
다음에 하나의 문자가 있는 .txt
파일을 나열합니다.file1.txt
, fileA.txt
는 출력되지만, file12.txt
는 출력되지 않습니다.[]
(대괄호) 실습ls file[12].txt
file
다음에 1
또는 2
가 포함된 .txt
파일을 나열합니다.file1.txt
, file2.txt
가 출력됩니다.ls file[1-3].txt
file
다음에 1
부터 3
까지의 숫자가 들어간 .txt
파일을 나열합니다.file1.txt
, file2.txt
, file3.txt
가 출력됩니다.[!...]
또는 [^...]
(부정 대괄호) 실습ls file[!1].txt
file
다음에 1
이 아닌 문자가 포함된 .txt
파일을 나열합니다.file2.txt
, fileA.txt
등이 출력되지만, file1.txt
는 제외됩니다.{}
(중괄호) 실습ls file{1,A}.txt
file1.txt
또는 fileA.txt
와 일치하는 파일을 나열합니다.file1.txt
, fileA.txt
가 출력됩니다.ls *.{txt,csv}
.txt
와 .csv
확장자를 가진 모든 파일을 나열합니다.example.txt
, data.csv
등이 출력됩니다.cp *.txt backup/
.txt
파일을 backup
디렉토리로 복사합니다.backup
디렉토리에 .txt
파일들이 복사됩니다.mv file?.txt archive/
file
다음에 한 글자가 있는 모든 .txt
파일을 archive
디렉토리로 이동합니다.file1.txt
, fileA.txt
등이 archive
디렉토리로 이동됩니다.rm file[1-3].txt
file
다음에 1
, 2
, 3
이 포함된 모든 .txt
파일을 삭제합니다.file1.txt
, file2.txt
, file3.txt
가 삭제됩니다.rm *
명령어는 현재 디렉토리의 모든 파일을 삭제하므로 주의해야 합니다.ls
명령어로 먼저 어떤 파일들이 선택되는지 확인하는 것이 좋습니다."
또는 '
)로 감싸서 사용합니다. 예를 들어, echo "*"
는 별표를 그대로 출력합니다.이제 와일드카드 패턴을 사용하여 리눅스 파일 시스템에서 다양한 작업을 수행하는 방법을 익히셨습니다. 와일드카드는 리눅스에서 매우 강력한 도구이며, 올바르게 사용하면 작업 효율성을 크게 높일 수 있습니다.