System/OS
2003.04.23 09:58
[linux] 쉘 스크립트에 대한 설명과 예제..
조회 수 13414 댓글 0
1. Shell 프로그램이란 ?
Shell 프로그램은 보통 스크립트(script)라고 합니다. Shell 스크립트는 DOS의 뱃치 파일과 같은 것입니다.
다만 UNIX에는 DOS와는 달리 여러 개의 쉘이 존재한다는 것이 특이하지요.
따라서 UNIX에서 쉘 프로그램을 작성하실 때는 어떤 쉘을 사용하는 가를 미리 지정해 주어야 합니다.
만약 본 쉘을 사용하고 싶으면
#!/bin/sh
C-쉘을 사용하고 싶으면
#!/bin/csh
라고 미리 지정합니다.
스크립터에서 # 다음 부터는 주석을 의미합니다.
스크립터는 변수를 선언할 필요가 없다는 것이 일반 프로그래밍 언어와 차이점이라고 할 수 있읍니다.
그리고, 일반 유닉스 명령어를 스크립트 안에서 사용할 수 있다는 것도 특이하지요.
2. Shell 프로그램 예제
hello.sh 스크립트
--------------------------------------------
#!/bin/csh
echo "Hello"
echo ",world"
--------------------------------------------
이 스크립트는 Hello, world를 화면에 출력하는 C-쉘 프로그램이다. echo는 화면에 출력하는 명령이다.
greeting.sh 스크립트
--------------------------------------------
#!/bin/csh
echo "What is your name ?"
set name = $<
echo "Hello, $name."
--------------------------------------------
키보드에서 입력을 받을 때는 set 변수 = $< 라고 써줍니다.
또한 변수의 값을 표시하고 싶을 때는 $변수라고 씁니다. 즉, $변수 = 변수값
3. Shell 프로그램 실행시키기
쉘 스크립트를 실행시키려면..
% chmod 755 hello.sh
% hello.sh
그리고..
% chmod 755 greeting.sh
% greeting.sh
번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|---|
849 | Develop | [js] 스타크래프트(starcraft).. | hooni | 2013.04.23 | 6640 |
848 | Develop | [php] 탐색기와 같은 다이나믹 트리(xml/xsl 이용) | hooni | 2013.04.23 | 7154 |
847 | Develop | [c] 네트워크 보안 프로그래밍 과제 (Server,Agent,Client) | hooni | 2013.04.23 | 6473 |
846 | System/OS | [windows] 원격 데스크탑(터미널 서비스) 포트 변경 | hooni | 2013.04.23 | 16305 |
845 | System/OS | [switch] 시스코 스위치 관리자 암호 초기화 방법 | hooni | 2013.04.23 | 17188 |
844 | System/OS | [switch] 시스코 카탈리스트(Cisco Catalyst) 기본 설정 | hooni | 2013.04.23 | 17497 |
843 | Develop | [switch] 시스코 카탈리스트(Cisco Catalyst) 2950 미러링 설정 | hooni | 2013.04.23 | 11392 |
842 | Develop | [c] 시스템 보안 과제.. 시간(amc time) 변경 | hooni | 2013.04.23 | 7194 |
841 | Develop | [c] 암호 알고리즘 소스.. | hooni | 2013.04.23 | 8342 |
840 | Develop | [c] 지폰(gphone) 소스.. 수정(암호화) | hooni | 2013.04.23 | 7434 |
839 | System/OS | [perl] 영규가 만든 스크립트.. 하하.. | hooni | 2013.04.23 | 10597 |
838 | Develop | [c] 파일(int fd)에서 개행문자 단위로 읽기 by 후리자 | hooni | 2013.04.23 | 7152 |