셸 스크립트
셸 스크립트
셸은 여러 가지 환경 변수 값을 갖는데, 설정된 환경 변수는 echo $환경변수이름 형식으로 명령을 실행하면 확인할 수 있다. 예를 들어 호스트 이름을 출력하려면 echo $HOSTNAME 명령을 실행한다.
3행 문자열로 취급함
5행 숫자로 취급함 // expr 을 써야 하며 수식과 함께 `써야함. 각 단어마다 띄어쓰기를 사용해야함
7행 괄호와 * 앞에는 역슬래시(\)을 붙여야함
결과
3행을 계산으로 바꿀려면
결과
if 문 else 문
기본적인 문법
if [조건]
then
참일 경우 실행
fi
조건 사이에 각 단어에는 모두 공백이 있어야함.
“문자열1” = “문자열2” // 두 문자열이 같으면 참
“문자열1” !=”문자열2” // 두 문자열이 같지 않으면 참
-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이 작거나 같으면 참
!수식 // 수식이 거짓이면 참
파일과 관련된 조건
-d 파일이름 //파일이 디렉터리이면 참
-e 파일이름 //파일이 존재하면 참
-f 파일이름 //파일이 일반 파일이면 참
-g 파일이름 //파일에 set-group-id가 설정되면 참
-r 파일이름 //파일이 읽기 가능하면 참
-s 파일이름 //파일크기가 0이면 참
-u 파일이름 //파일에 set-user-id가 설정되면 참
-w 파일이름 //파일이 쓰기 가능하면 참
-x 파일이름 //파일이 실행 가능하면 참
fname: httpd 서버실행 파일인 lib/system/system/sshd.service에 저장
fname: 변수에 저장된 lib/system/system/sshd.service 파일이 일반 파일이면 참이므로 실행
그렇지 않으면 service is not installed 실행
case~esac문
if문은 참 거짓 두 경우만 사용 가능함.
여러가지 경우의 수가 있다면, if문을 중복 사용하기 때문에 구문이 복잡해진다.
이때 사용하는 것이 case문