type
status
date
slug
summary
tags
category
icon
password

정의

쉘(Shell)은 사용자와 컴퓨터 운영 체제 간의 인터페이스를 제공하는 프로그램입니다. 사용자는 쉘을 통해 명령어를 입력하고, 커널이 이를 해석하여 하드웨어에게 명령을 하달합니다.
💡
왜 쓰나요? 반복되는 작업을 자동화(cron)하기 위해 스크립트를 짭니다.
 
스크립트 언어이기 때문에 컴파일 언어와 다릅니다.
구분
스크립트 언어
컴파일 언어
실행 방식
인터프리터에 의해 한 줄씩 실행
컴파일러에 의해 전체 프로그램을 번역 후 실행
실행 속도
비교적 느림
비교적 빠름
디버깅
실행 중에 디버깅 가능
컴파일 단계에서 디버깅 가능
개발 편의성
코드 수정 후 즉시 실행 가능
코드 수정 후 다시 컴파일 필요
예시
Python, JavaScript, Bash
C, C++, Java
 
관계는 다음과 같습니다.

메타문자

경로 이름 메타문자

틸드(~)

틸드(~)는 사용자의 홈 디렉토리를 나타내는 데 사용됩니다. 예를 들어, cd ~ 명령어를 입력하면 현재 사용자의 홈 디렉토리로 이동합니다.
 

대시(-)

대시(-)는 종종 옵션이나 플래그를 지정하는 데 사용됩니다. 예를 들어, ls -a 명령어는 숨김 파일을 포함한 모든 파일을 나열합니다.
 

파일 이름 대체 메타문자

별(*)

별(*)은 와일드카드 문자로, 파일 또는 디렉토리 이름의 0개 이상의 문자를 대체하는 데 사용됩니다. 예를 들어, ls *.txt 명령어는 확장자가 .txt인 모든 파일을 나열합니다.
 

물음표(?)

물음표(?)는 와일드카드 문자로, 파일 또는 디렉토리 이름의 단일 문자를 대체하는 데 사용됩니다. 예를 들어, ls file?.txt 명령어는 file1.txt, fileA.txt와 같이 file 다음에 한 글자가 오는 모든 파일을 나열합니다.
 

대괄호([])

대괄호([])는 와일드카드 문자로, 대괄호 안에 지정된 문자 중 하나와 일치하는 파일이나 디렉토리를 찾는 데 사용됩니다. 예를 들어, ls file[1-3].txt 명령어는 file1.txt, file2.txt, file3.txt 파일을 나열합니다.
 

인용부호 메타문자

홑 따옴표(')

홑 따옴표(')는 따옴표 안에 있는 모든 문자를 그대로 문자열로 처리하는 데 사용됩니다.

이중 따옴표(””)

이중 따옴표(" ")는 변수의 값을 확장하는 데 사용됩니다.
예를 들어, echo "$USER" 명령어는 사용자 이름을 출력합니다.

역 홑 따옴표(``)

역 홑 따옴표(``)는 명령어를 실행하고 그 결과를 문자열로 반환하는 데 사용됩니다.
예를 들어, echo "오늘 날짜는 \\date\ 입니다" 명령어는 현재 날짜를 출력합니다.

방향재지정 메타문자

출력 방향 재지정(>)

출력 방향 재지정(>)는 명령어의 출력을 파일로 저장하는 데 사용됩니다.
예를 들어, echo "Hello, World!" > hello.txt 명령어는 "Hello, World!" 문자열을 hello.txt 파일에 저장합니다.
 
기타 스크립트 사용 방법입니다.
쉘은 왜 자료형을 안쓸까?권한
Loading...