일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 사용자100명
- 성능측정
- 리눅스
- 4차산업
- 환경정보
- 명령어
- 동시접속
- gbd-200
- 일본유학
- 정보처리기사
- JMeter
- 다음메일
- 코로나바이러스
- ads.txt
- 韓国ヒップホップ
- 한국판뉴딜
- 스마트시티
- 5G
- 200-301
- 스펙정보
- 사양정보
- DevNet
- certification
- move앱
- 사양
- QA
- 일본대학원
- ios
- 부자아빠가난한아빠
- 韓国
- Today
- Total
IT 컴퓨터공학 자료실
#!(Shebang, 셔뱅) 알고 쓰자! - 출처 : 금소니의 삶 본문
지금까지 쉘 스크립트를 정말 많이 작성하고 사용하였는데 이 때 사용하던 #!(셔뱅)을 그냥 형식적으로만 사용했지 제대로 알고 사용하지는 않았습니다.
그래서 이번 기회에 한 번 알아보고 이제 알고 써보기로 하였습니다.
1. #!(Shebang, 셔뱅)이란?
유닉스 계열 운영체제에서 스크립트를 작성할 때 맨 처음에 위치하며, 주로 쉘 스크립트를 작성할 때 많이 사용됩니다.
이 의미는 #!(셔뱅)으로 선언된 부분으로 스크립트를 동작시키겠다는 의미로 보시면 됩니다.
2. #!(Shebang, 셔뱅) 사용법
다른 스크립트에서도 사용할 수 있지만 저의 경우에는 주로 쉘 스크립트를 사용할 때 많이 사용하였습니다.
스크립트 최상단에 #! [인터프리터] [옵션] 을 이용하여 선언하여 주시면 됩니다.
예를들어 설명드리도록 하겠습니다.
EX) 본 쉘(sh)을 이용하여 스크립트 실행 - 스크립트
- 실행 결과
* 참고로 말씀드리자면 스크립트의 경우 기본적으로 생성하였을 때 권한이 아래와 같기 때문에 바로 실행이 안 될 수 있습니다. 이 경우 권한을 변경하시거나 sh, bash, source 등 쉘 명령어를 이용하여 스크립트를 실행하시기 바랍니다.
저의 경우에는 권한을 변경하여 실행하였습니다.
실행결과 스크립트에 작성한 내용이 출력되는 것을 알 수 있습니다.
하지만... 이 #!(셔뱅)을 사용하지 않아도 스크립트가 동작할 수 있습니다.
이 이유는 조금 더 찾아봐야겠지만 두가지 중 하나의 이유로 동작한다고 예상이 됩니다.
1. 현재 동작하고 있는 쉘 기반으로 스크립트 수행
2. 스크립트 확장자(.sh)를 사용하고 있기 때문에 이미 해당 쉘로 스크립트 수행
혹시라도 이 이유에 대해서 정확히 알고 계시는 분이 계시다면... 꼭 댓글을 달아주시면 감사하겠습니다.
'네트워크 > 리눅스' 카테고리의 다른 글
리눅스 배쉬 셀, 스크립트 강의 1 - 링크드인, Kevin Dankwardt (0) | 2021.10.25 |
---|---|
리눅스 배쉬 셀, 스크립트 강의 2 - 링크드인, Kevin Dankwardt (0) | 2021.10.25 |
Learning Linux Command Line - LinkedIn Learning, Scott Simpson Sammary (리눅스 커맨드 라인 강의 요약) (0) | 2021.10.07 |
SCP를 사용한 서버간 파일 전송 및 수신 - 출처 : ithub (0) | 2021.10.07 |
초보자를 위한 쉘 스크립트의 기본 명령의 소개 : 쉘 스크립트 기본 문법 입문 (Qiita 펌) (0) | 2020.06.16 |