IT하는 참새

shell의 기본개념 본문

리눅스

shell의 기본개념

pshot 2018. 9. 19. 19:42

쉘이란? (Shell)


사용자커널 사이에서 


- 사용자가 내리는 명령을 해석하여 os(커널)에 전달

- 커널(os)에서 발생하는 시스템콜 등을 해석하여 사용자에게 전달


쉘의 종류


본쉘  -  C쉘  -  콘쉘  -  bash쉘  -  dash쉘


종류는 많은데 리눅스의 대부분은 bash쉘을 사용하고 있음(본쉘 기반임)



쉘의 특수문자들의 의미


# : 주석


* : 글자 아무거나 

 - ex) ls -l *file.txt   =   어떻게든 file.txt로만 끝나면 되는것들만 ls해서 보여줌


? : 글자 아무거나 하나

 - ex) ls -l ?file.txt   =   한글자만 아무거나되고 file.txt로 끝나는 것들만 ls해서 보여줌


[ ] : 글자 아무거나 하나(범위지정 가능)

 - ex) cat [정규식]file.txt = 정규식 해당되는 한글자에 file.txt로 끝나는 것들만 ls해서 보여줌


; : 명령어 왼쪽부터 순차적으로 수행

 - ex) ls; id; date


\ : 바로 다음문자 하나의 특수의미 제거

 - ex) ls -l \$쉘변수


' ' : 모든 특수문자의 의미를 제거하는 quotation 

 - ex) ls -l 'asdas dasdas  dasdasjkd'


" " : 모든 특수문자 의미를 제거하지만 $는 안지움. 고로 쉘 변수 출력가능

 - ex) ls -l "asdasd asdasdjkasd $gugu asdas"


원래 공백도 특수문자로 취급하는 거임

공백을 FS라고도 함 (Field Seperator)

-----------------------------------------------------------------



쉘 스크립트에서 변수의 값을 명령어로써 처리하고 싶다면


watasi=whoami (watasi는 변수, whoami는 리눅스 기본명령어)  -  (X)


watasi=$(whoami)  (O)


이와 같은의미로


watasi = `whoami` 이렇게 back quotation을 지정해도 가능


'리눅스' 카테고리의 다른 글

shell의 변수  (0) 2018.09.19
File Descriptor  (0) 2018.09.19
vi 자주 사용되는 명령어  (0) 2018.09.19
ls 명령어 팁  (0) 2018.09.18
리눅스 배포판  (0) 2018.09.18