0Pricing
Linux Command Line & Bash Scripting Mastery · 강의

셸 확장과 와일드카드 처리

중괄호 확장, 물결표 확장, 파일 이름 와일드카드 패턴을 비롯해 셸이 명령어를 확장하는 방식을 이해합니다.

셸 확장과 와일드카드 처리은(는) 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 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 작업 제어(bg, fg, jobs)
  2. 셸 확장과 와일드카드 처리
  3. 별칭과 사용자 지정 프롬프트
  4. 셸 함수와 재사용 가능한 코드 조각
← Linux Command Line & Bash Scripting Mastery(으)로 돌아가기