bash shell 이란
In computing, a shebang is the character sequence consisting of the characters number sign and exclamation mark (#!) at the beginning of a script. It is also called sha-bang,[1][2] hashbang,[3][4] pound-bang,[5] or hash-pling.[6]
Under Unix-like operating systems, when a script with a shebang is run as a program, the program loader parses the rest of the script's initial line as an interpreter directive; the specified interpreter program is run instead, passing to it as an argument the path that was initially used when attempting to run the script.[7] For example, if a script is named with the path path/to/script, and it starts with the following line:
#!/bin/sh
then the program loader is instructed to run the program /bin/sh instead, passing path/to/script as the first argument.
#!를 shebang(샤방) 라인이라고 부른다.
*.sh 스크립트에 처음
#!/bin/bash
#!/usr/bin/env bash 등으로 사용하는데
이렇게 쓰면 /bin/sh를 로드하지 않고 대신 #!에 지정한 쉘을 interpreter directive(인터프리터 지시자)로 구분한다.
(https://en.wikipedia.org/wiki/Shebang_(Unix) - 발취)
========================================
bash 는 Bourne Again Shell 의 약자입니다. 가장 현대적이고 강력한* 셀입니다. Steven Bourne 이라는 사람이 만든 Bourne Shell (약칭: sh) 을, 개량한 것이 bash 이에요
* Korn shell 이라는 강력한 셀도 있지만, bash 와 달리 100% 무료는 아닙니다.
발표된 순으로 셀의 종류를 나열하자면 다음과 같습니다:
Bourne shell (sh) - 1979년에 발표
C shell (csh)
Korn shell (ksh)
Bourne Again shell (bash) - 1988에 처음 발표
(http://mwultong.blogspot.com/2006/07/shell-bash-shell.html - 발최)
========================================
리눅스에서 쓸 수 있는 모든 쉘들처럼, BASH(Bourne Again Shell)은 뛰어난 명령 라인 쉘이면서, 그 자체로도 하나의 스크립팅 언어이다. 당신은 쉘 스크립팅을 이용해서 쉘이 가진 능력을 충분히 활용할 수 있으며, 쉘 스크립팅이 아니었으면 수많은 명령을 필요로 했을 많은 일들을 자동적으로 처리할 수도 있다. 당신의 리눅스 박스에 놓여 있는 많은 프로그램들은 쉘 스크립트들이다. 만일 쉘 스크립트가 어떻게 작동하는지 배우고 싶거나 당신이 가지고 있는 쉘 스크립트를 수정하고 싶다면, bash 문법을 이해하는 것은 필수적이다. 게다가, bash 언어를 이해하면 정확히 당신이 원하는 방식으로 일을 하는 당신 자신의 프로그램을 작성할 수 있다.
========================================
- Shell의 종류
bash ( Bourne-Again Shell )
프롬프트 : #
실행파일은 /bin/bash
Bourne again shell은 최초로 개발된 쉘인 Bourne shell의 변종이라 할 수 있습니다.
리눅스에서 가장 많이 사용되는 IEEE POSIX 호환이며 Borune shell과 호환되는 쉘로서
GNU 프로젝트에 의해 만들어지고 배포되고 있습니다. 명령행 편집 기능을 제공합니다
sh ( Bourne Shell )
프롬프트 : $
본 쉘 보다는 개발된 C쉘이나 콘 쉘과 기능적인 면을 비교해 보면 본 쉘에 미흡한 점이 있다. 그 중 가장 큰 단점은 상호 대화형(Interactive)
방식을 취하고 있지 않다는 점이다. 이러한 상호 대화형 방식을 사용하고자 한다면 쉘을 바꿔서 작업하는 것이 좋을 것이다.
- Steven Bourne의 Bourne Shell, sh
- 쉘 명령 대본을 작성하는데 이용되는 쉘
- 강력한 명령 프로그래밍 언어 기능을 갖는 쉘
- 가장 오래 동안 모든 유닉스 시스템의 표준 구성 요소
csh ( C 프로그램 스타일의 Shell )
프롬프트 : %
버클리 캘리포니아 대학에서 개발된 프로그래머들에게 적합한 shell입니다. ( csh는 C쉘이며 sh는 본 쉘이다 )
대화형 사용법에서는 Bourne shell과 대부분 호환되지만 전혀 다른 프로그래밍 인터페이스를 가지고 있고, 히스토리 대체라는 복잡한
기능으로 대신하고 있지만 명령행 편집 기능은 제공하지 않습니다.
- Bill Joy의 C Shell, csh
- C언어와 유사한 언어를 사용
- 상호 대화형 방식으로 구성
ksh ( Korn Shell )
프롬프트 : $
일반적으로 유닉스에서 가장 많이 사용되고 있는 shell이며 Bourne shell에 처음으로 현대적
인 shell 기능(C shell로부터 차용한 것이다.)을 도입한 shell 입니다. Bourne shell과 호환
되고, 명령행 편집 기능을 제공합니다.
zsh
프롬프트 : %
Korn Shell과 매우 유사한 셸이지만 Korn Shell보다 더 많고 유용한 기능 등을 추가하여 개선시킨 것이다.
tc Shell
프롬프트 : >
코넬 대학에서 C Shell 수정본에 Korn Shell의 기능을 포함하여 개발된 셸이다. 95%의 C Shell과 5%의 새로운 기능이 추가되어 만들어졌다.
(http://unabated.tistory.com/entry/LinuxUnix%EC%89%98-Shell-%EC%9D%98-%EC%A0%95%EC%9D%98%EC%99%80-%EC%A2%85%EB%A5%98 - 발최)
'공부방' 카테고리의 다른 글
솔라리스(Solaris) 시스템정보 확인 명령어 (0) | 2017.02.03 |
---|---|
bash 쉘 사용하기 / 메뉴얼 / Bash 쉘 요약 정리 (0) | 2017.01.30 |
윈도우10에서 Bash 쉘 쓰기 (0) | 2017.01.30 |
우리나라에서 내진설계(정보통신설비 내진 중심)란? (0) | 2016.09.13 |
ActiveX 제거하기 그리고 HTML5 (0) | 2016.09.13 |