프로그래밍에 있어서 if문 조건문은 매우 중요합니다.


쉘에서 조건문을 사용해보겟습니다.


if 문하고 밑은 then fi 로 마누리 됨니다.


if문 마다 then을 써주셔야하고 if문이 여러개일경우에는 맨 마지막에만 fi를 하시면 됨니다.



if [ 조건 ] 은 대괄호와 문자 및 조건식사이마다 띄워쓰기가 있어야 합니다.


if test로 if [ 조건 ] 문을 대신할수 있습니다.



결과는 똑같습니다.


if문에는 else문이 꼭 있습니다.


else문에는 then이 필요 없습니다.



else하고 if문을 또 사용 할수 있지만 


elif 라고 줄여 사용할수 있습니다.


elif문에는 then이 필요 합니다.





조건식에는 여러 가지가 잇습니다.


다른 프로그래밍 언어와 다름니다.



문자열 비교  

 결과 

 "문자열" = "문자열"

 두문자열이 같으면 참 

 "문자열 != "문자열"

 두 문자열이 다르면 참

 -n "문자열"

문자열이 null이 아니면 참 

-z "문자열" 

문자열이 null이면 참 

산술 비교  

 

 수식1 -eq 수식2

 두 수식이 같으면 참

 수식1 -ne 수식2

두 수식이 다르면 참

 수식1 -gt 수식2

 수식1 이크면 참

 수식1 -ge 수식2

수식1 이 크거나 같으면 참

 수식1 -lt 수식2

수식1 이 작으면 참

 수식1 -le 수식2

수식1 이 작거나 같으면 참

 !수식

 수식이 거짓이면 참 


Posted by 준P

쉘 스크립트는 다양한 방면에서 쓸모가 많습니다.


c언어와 유사하게 만들수도 있으며 컴파일이 필요 없고 텍스트 애서 바로 실행이 가능합니다.


일단 기본적으로 쉘스크립트를 사용할려면 파일확장자가 sh이어야 합니다.


또한 맨위에 #!/bin/sh 가 있어야 합니다.


저는 일단 vim으로 hell.sh파일을 만들어서 hello_hell을 뛰우겟습니다.




저장



sh로 실행이 가능한데요


바로 ./ 를 이용하여 실행이 불가능한 이유는 실행권한이 없기떄문 입니다.


따라서 실행권한을 추가 해주어야 합니다.


chmod +x 파일명 으로 실행권한을 주시면됨니다.



실행 권한을 주면 다시 줄필요가 없습니다.


이재 변수 사용 방법을 알려드리겟습니다.


쉘에서는 기본적으로 모두 문자열로 처리 합니다.


숫자라 하여도 문자열로 인식이 된다는 것이죠


변수는 c언어 처럼 선언 문은 없습니다.


변수 a를 사용하고 싶다면 a=hello_hell


처럼 사용 하시면 됨니다.


변수는 대소문자를 구분합니다.


대입을 할떄 =사이에 공백이 있으면 안됨니다.


만약 숫자처럼 사용 하시고 싶으시면 expr로 변환 해주시면 됨니다.


그런데 사용하기전 ` 으로 덮어 주셔야합니다.


숫자키중 1왼쪽에 있는 특수문자 입니다.



123 에 123을 더하므로 246 이되어야 합니다.



정상적으로 되었습니다.


이제 파라미터 변수를 알려드리겟습니다.


파라미터 변수는 명령어의 파라미터를 말합니다.


명령어로 알려드린다면 



 yum

-y 

install 

vim 

 $0

$1 

$2 

$3 



로 나누어 짐니다.


$0는 함수명이됨니다.(파일명)

$1은 첫 파라미터 

$2는 두번쨰 파라미터

...해서 진행됨니다.


$* 으로 전체 파라미터를 볼수 있습니다.





이렇게 사용 할 수 있습니다.


이제 입력하는 방법을 알려드리겟습니다.


입력은 read라는 함수로 가능합니다.


read 변수


read를 사용 할때 $문을 사용하면 안됨니다.



입력받은것을 출력하는 간단한 스크립트 입니다.



정상적으로 출력 됨니다.


출력하는 방법충 echo말고도 c언어의 pritnf 를 사용할수 있습니다.


허나 방법이 살짝 다름니다.


소괄호가 없습니다.





Posted by 준P