셸 확장과 와일드카드 처리
중괄호 확장, 물결표 확장, 파일 이름 와일드카드 패턴을 비롯해 셸이 명령어를 확장하는 방식을 이해합니다.
셸 확장과 와일드카드 처리은(는) CoddyKit의 무료 Linux Command Line & Bash Scripting Mastery 강의입니다. 이것은 4개 중 2번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Linux Command Line & Bash Scripting Mastery 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Linux Command Line & Bash Scripting Mastery 강의에는 총 4개의 강의가 포함되어 있습니다.
셸 확장이란 무엇인가요?
Linux에서 셸은 사용자와 운영 체제 사이를 연결하는 번역기와 같습니다. 셸은 명령을 실행하기 전에 흔히 확장이라고 하는 일종의 '마법'을 수행합니다.
셸 확장이란 셸이 명령에서 특수 문자나 패턴을 찾아 다른 내용으로 바꾸는 것을 뜻합니다. 이 작업은 명령이 실제로 실행되기 전에 이루어지므로 입력해야 할 내용이 줄어들고 명령의 기능이 강력해집니다!
틸드 `~`로 홈 디렉터리 사용하기
틸드(~) 확장은 매우 편리한 단축 기능입니다. 현재 사용자의 홈 디렉터리로 자동 확장됩니다.
/home/yourusername을 입력하는 대신 ~만 사용할 수 있습니다. 홈 폴더의 파일을 탐색하거나 참조할 때 특히 유용합니다.
echo ~
echo ~/Documents다른 사용자의 홈 디렉터리에 틸드 사용하기
틸드는 자신의 홈 디렉터리에만 사용하는 것이 아닙니다! 다른 사용자의 홈 디렉터리를 가리킬 때도 사용할 수 있습니다.
~username을 입력하면 셸이 이를 지정한 'username'의 홈 디렉터리로 확장합니다. 공유 파일이나 설정에 액세스할 때 유용합니다.
~root는/root로 확장됩니다.~guest는/home/guest로 확장됩니다.
중괄호 확장 `{}`
중괄호 확장을 사용하면 임의의 문자열을 생성할 수 있습니다. 하나의 패턴에서 여러 항목을 일일이 입력하지 않고 빠르게 만드는 방법이라고 할 수 있습니다.
셸은 중괄호 {} 안의 내용을 서로 পৃথ개의 단어 목록으로 확장합니다. 이름이 비슷한 파일이나 디렉터리를 만들거나 여러 항목에 대해 명령을 실행할 때 매우 유용합니다.
echo {apple,banana,cherry}중괄호 범위
중괄호 확장을 사용하여 숫자나 문자의 연속된 범위도 생성할 수 있습니다. 중괄호 안에서 ..로 구분된 두 항목을 사용하면 됩니다.
셸은 해당 범위의 모든 항목을 생성하므로 번호가 매겨진 파일이나 디렉터리를 만들거나 여러 값 집합을 차례로 처리하기 쉽습니다.
echo file_{1..3}.txt
echo {a..c}_report.log글로빙 소개
글로빙은 셸이 특수 와일드카드 문자를 사용하여 파일 이름과 경로 이름을 일치시키는 기능입니다. 파일을 찾기 위해 '검색 패턴'을 사용하는 것과 비슷합니다.
ls *.txt와 같은 명령을 입력하면 셸은 *.txt를 ls에 그대로 전달하지 않습니다. 대신 *.txt를 현재 디렉터리에서 일치하는 모든 파일의 목록으로 확장한 다음, 그 목록을 ls에 전달합니다.
`*`로 모두 일치시키기
별표(*)는 가장 일반적인 와일드카드입니다. 파일 이름에서 문자를 0개 이상 일치시킵니다.
문자의 어떤 연속된 부분에도 사용할 수 있으므로, 이름의 일부를 기준으로 파일을 선택할 때 매우 다양하게 활용할 수 있습니다.
mkdir -p glob_test
touch glob_test/report.txt glob_test/image.jpg glob_test/document.pdf
echo "Files ending in .txt:"
ls glob_test/*.txt
rm -rf glob_test`?`로 하나 일치시키기
물음표(?) 와일드카드는 문자를 정확히 하나 일치시킵니다.
일치시키려는 파일 이름 일부의 정확한 길이는 알고 있지만, 특정 문자는 모를 때 유용합니다.
mkdir -p glob_test
touch glob_test/file1.log glob_test/file2.log glob_test/fileA.log
echo "Files matching file?.log:"
ls glob_test/file?.log
rm -rf glob_test특정 문자 `[]`
대괄호([])를 사용하면 지정한 문자 집합 안에서 임의의 문자 하나를 일치시킬 수 있습니다.
이는 ?보다 더 정확하게 일치시킬 수 있는 방법입니다. 개별 문자를 나열하거나 범위를 지정할 수 있습니다(예: 소문자에 해당하는 [a-z], 숫자 하나에 해당하는 [0-9]).
mkdir -p glob_test
touch glob_test/photoA.png glob_test/photoB.png glob_test/photoC.png glob_test/photoD.png
echo "Files matching photo[A-C].png:"
ls glob_test/photo[A-C].png
rm -rf glob_test글로빙 조합
서로 다른 글로빙 패턴을 조합하고 중괄호 확장까지 함께 사용하면 강력한 파일 선택 기능을 만들 수 있습니다.
셸은 이러한 확장을 왼쪽에서 오른쪽으로 처리하여 필요한 항목만 정확히 일치시키는 복잡한 패턴을 생성합니다.
mkdir -p glob_test
touch glob_test/data_01.csv glob_test/data_02.txt glob_test/data_a.log glob_test/info_01.txt
echo "Files matching data_[0-9]*.{txt,csv}:"
ls glob_test/data_[0-9]*.{txt,csv}
rm -rf glob_test빠른 확인
다음 명령 중 report1.doc, report2.doc, report3.doc이라는 이름의 파일은 나열하지만 reportA.doc은 나열하지 않는 것은 무엇인가요?
복습 및 다음 단계
잘하셨습니다! 명령이 실행되기 전에도 셸이 명령을 확장하는 방식을 배웠습니다. 이 '마법' 덕분에 명령줄 작업을 훨씬 효율적으로 수행할 수 있습니다.
- 틸드 확장(
~): 홈 디렉터리를 가리키는 단축 기능입니다. - 중괄호 확장(
{}): 사용자 지정 문자열이나 연속된 범위를 생성합니다. - 글로빙(
*,?,[]): 와일드카드를 사용하여 파일 이름을 일치시키고 패턴 기반으로 강력하게 선택합니다.
이러한 확장을 이해하는 것은 효과적이고 간결한 명령을 작성하는 데 매우 중요합니다. 계속 연습해 보세요!
자주 묻는 질문
“셸 확장과 와일드카드 처리” 강의는 무료인가요?
네 — “셸 확장과 와일드카드 처리” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Linux Command Line & Bash Scripting Mastery 강의 전체를 잠금 해제할 수 있습니다. Linux Command Line & Bash Scripting Mastery 강의에는 총 4개의 강의가 포함되어 있습니다.
“셸 확장과 와일드카드 처리”에서 뭘 배우나요?
중괄호 확장, 물결표 확장, 파일 이름 와일드카드 패턴을 비롯해 셸이 명령어를 확장하는 방식을 이해합니다. 브라우저에서 직접 실행하는 실습 코드로 Linux Command Line & Bash Scripting Mastery을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Linux Command Line & Bash Scripting Mastery을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Linux Command Line & Bash Scripting Mastery은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 2번째 강의입니다.
“셸 확장과 와일드카드 처리” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Linux Command Line & Bash Scripting Mastery 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Linux Command Line & Bash Scripting Mastery 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.
이 강의의 모든 강의
- 작업 제어(bg, fg, jobs)
- 셸 확장과 와일드카드 처리
- 별칭과 사용자 지정 프롬프트
- 셸 함수와 재사용 가능한 코드 조각