목록쉘 스크립트 (8)
Connecting
Shell Loop Control 본 장에서는 반복문을 Shell에서 반복문을 제어하는 방법에 대해서 알아본다. 지난 챕터에서는 반복문의 종류와 이를 사용하는 방법에 대해서 알아보았지만 때때로 반복문 제어를 통해서 적절한 문장을 수행할 수 있다. The infinite Loop 대부분의 조건문에서는 조건이 있기 때문에 조건이 충족되면 반복문을 나갈 수 있다. 무한 루프는 이러한 조건이 충족되지 않고 계속해서 반복문이 수행하면서 문장을 수행하는 것을 말한다. Example #!/bin/bash A=10 until [ $A -lt 10 ] do echo $A a=`expr $A + 1` done while 문을 통해 0 ~ 9까지 숫자를 표기하는 예제에서 A는 10보다 크거나 같고 절대로 10보다 작아지지 ..
Shell Loop Types 이번 시간에서는 Unix Shell에서 사용하는 반복문에 대해서 알아본다. 반복은 일련의 명령을 반복할 수 있도록 하는 프로그래밍 도구로서 아래에서 다양한 반복문 종류를 살펴보도록 한다. 각각의 반복문은 상황에 따라서 적절하게 선택할 수 있어야 한다. The while loop while 반복문은 조건이 발생할 때까지 명령을 지속적으로 실행한다. 문법 while command do Statement(s) to be executed if command is true done Example #!/bin/sh a=0 while [ $a -lt 10 ] do echo $a a=`expr $a + 1` done $ ./while.sh 0 1 2 3 4 5 6 7 8 9 The for..
Shell Decision Making 이번 장에서는 Unix Shell에서 특정 조건일 때, 올바른 수행이 가능하도록 하는 조건문에 대해서 알아본다. The if...else statements if else 문은 주어진 옵션 집합에서 조건을 선택할 수 있도록 지원한다. 어떠한 조건에 대해서 True가 될 때 지정된 문이 실행되고, False일 경우 실행되지 않는다. 대부분 비교 연산자를 통해 작성한다. 아래 실습을 통해 알아볼 것이지만 각 구문에 대한 공백을 지켜야 오류가 발생하지 않는다. if...fi statement 문법 if [ expression ] then Statement(s) to be executed if expression is true fi Example #!/bin/bash a=..
다양한 쉘 종류에 따라 연산자도 다양하지만 이번 시간에서는 가장 기본적인 bash 쉘의 기본 연산자에 대해 설명한다. 산술 연산자 관계 연산자 Boolean 연산자 문자열 연산자 파일 테스트 연산자 bash의 경우 간단한 산술 연산을 수행하는 메커니즘이 존재하지 않기 때문에 awk 혹은 expr과 같은 기본 명령을 사용한다. bash에서 진행하는 간단한 숫자 계산 기본적으로 bash에서는 사칙연산이 모두 가능하지만 나누기 소수점 계산은 불가능하며, 모두 정수형으로 취급된다. 따라서 awk나 bc 명령을 통해서 소수점 계산을 처리해야 한다. bash 변수 처리 x=3 y=4 z=$((x+y)) echo $z # 7 echo $((x-y)) echo $((x*y)) echo $((x/y)) # -1 # 12..
쉘 스크립트 배열 이번 시간에서는 쉘 스크립트에서 배열을 사용하여 변수의 집합을 그룹화하는 방법을 알아본다. 배열 정의 우리가 지금까지 쉘 스크립트에서 변수를 선언할 때 다음과 같은 방법을 사용했다. #!/bin/bash NAME01="Lucas" NAME02="soengwon" NAME03="wisoft" NAME04="hanbat" echo $NAME01 위에서 정의한 변수를 배열로 정의하면 다음과 같이 사용할 수 있다. #!/bin/bash NAME[0]="Lucas" NAME[1]="soengwon" NAME[2]="wisoft" NAME[3]="hanbat" echo "First Index: ${NAME[0]}" echo "Second Index: ${NAME[1]}" 만약 모든 배열에 접근하고..
본 문서는 다음 링크를 참조하여 작성하였음을 알린다. https://www.tutorialspoint.com/unix/unix-special-variables.htm 이번 시간에서는 유닉스/리눅스에서 사용하는 특수 변수에 대해서 알아보도록 한다. 이러한 변수 이름은 예약어로 지정되어 있기 때문에 지역, 전역 변수로 사용할 수 없으며, 스크립트 작성 시 각별하게 유의해야 한다. 예약 변수 (Reserved Variable) 일반적인 프로그래밍 언어에서 사용하는 예약 변수와 동일한 기능을 담당한다고 생각하면 된다. 쉘 프로그래밍을 작성할 때, 예약변수를 사용하면 보편적인 실행환경으로 작성할 수 있으므로 편리하게 사용할 수 있다. 변수명 설명 HOME 사용자 홈 디렉터리 PATH 실행 파일을 찾을 경로 LAN..
본 문서는 https://www.tutorialspoint.com/ 에서 제공하는 UNIX / LINUX 쉘 튜토리얼을 참고했다. Extended Shell Scripts 쉘 스크립트를 수행할 작업과 시기를 알려주는 필수 구성요소가 필요하다. 대부분의 쉘 스크립트는 이보다 복잡하지만, 쉴 스크립트 역시 일종의 프로그래밍 언어이며, 변수, 함수, 제어, 반복 등과 같은 구조로 이루어진다. 스크립트가 복잡한 구조로 되어 있어도 순차적인 실행구조를 가진다. 다음은 간단한 입력 구조를 가지는 쉘 스크립트 예제이다. #!/bin/sh echo "What is your name?" read PERSON echo "Hello, $PERSON" $./test.sh What is your name? lucas Hello..
PART 1 Shell Script Basic Shell Script 쉘 스크립트는 리눅스/유닉스에서 실행하기 위해 고안된 오픈소스 프로램이다. 쉘 스크립트에서는 여러 명령을 작성하여, 반복적이고 단순한 형태의 작업을 프로그래밍하고 실행 가능한 파일 형태로 저장하여 사용할 수 있도록 한다. 쉘이란 사용자와 운영체제 간의 인터페이스를 지칭하는 유닉스 용어이다. 쉘을 통해 사용자에게 인터페이스를 제공하고 사람이 해석할 수 있는 명령을 시스템이 해석할 수 있는 명령으로 변환하여 사용자가 원하는 명령을 실행할 수 있도록 한다. 위의 그림에서 확인할 수 있듯이 커널은 운영체제가 동작하기 위한 가장 핵심적인 부분으로 하드웨어와 운영체제간의 통신을 위해 사용되며, 쉘은 사용자의 입력받은 명령은 운영체제에 전달하고 이..