링크 ux 학습 (10) Shell 의 제어 문
@ (Shell 의 제어 문)
1. 조건 부 테스트 문
테스트 문 10 Shell 의 특유 한 기능, Shell 은 테스트 연산 자 를 제공 합 니 다. 이 연산 자 를 통 해 Shell 프로그램 은 특정한 조건 이나 몇 가지 조건 이 성립 되 는 지 판단 할 수 있 습 니 다.Shell 에서 사용 자 는 테스트 문 구 를 사용 하여 지정 한 조건 식 의 조건 의 진실 과 가 짜 를 테스트 할 수 있 습 니 다.지정 한 조건 이 진실 이면 조건 테스트 의 반환 값 은 0 입 니 다.반면 조건 테스트 의 반환 값 은 0 이 아 닙 니 다.조건 부 테스트 의 문법 은 두 가지 가 있 는데 그것 이 바로 test 명령 과 [] 명령 이다.
1.1 test 문장
test expression
그 중에서 매개 변수 expression 은 테스트 를 해 야 하 는 문 구 를 표시 합 니 다. 전체 test 문 구 는 진실 이 고 test 는 0 으로 돌아 갑 니 다. 가짜 라면 0 이 아 닌 것 으로 돌아 갑 니 다.
= = 필 자 는 test 문 구 를 강력 추천 합 니 다. [] 문 구 는 매우 엉망 이 고 요구 가 엄격 하 며 여러 가지 오류 가 발생 하여 초보 자 들 의 학습 에 불리 합 니 다. =
1.2 [] 문
[expression]
그 중에서 매개 변수 expression 의 문 구 는 test 명령 의 문법 과 완전히 같다.조건 식 과 좌우 괄호 사이 에 빈 칸 이 있어 야 합 니 다.
1.3 파일 테스트
파일 테스트 는 제 시 된 경로 에 따라 현재 경로 의 파일 속성 과 유형 을 판단 하 는 것 을 말한다.
test op file
[ op file ]
환경 변수
설명 하 다.
-a
파일 이 존재 하면 조건 테스트 결과 가 0 으로 되 돌아 갑 니 다.
-b
파일 이 존재 하고 블록 파일 이 라면 조건 테스트 결 과 는 0 입 니 다.
-c
파일 이 존재 하고 문자 파일 이 라면 조건 테스트 결 과 는 0 입 니 다.
-d
파일 이 존재 하고 디 렉 터 리 파일 이 라면 조건 테스트 결 과 는 0 입 니 다.
-e
파일 이 있 으 면 조건 테스트 를 0 으로 되 돌려 줍 니 다.
-f
파일 이 존재 하고 일반 파일 이 라면 조건 테스트 결과 가 0 입 니 다.
-r
파일 이 존재 하고 읽 을 수 있 으 면 조건 부 테스트 결 과 는 0 입 니 다.
-w
파일 이 존재 하고 쓸 수 있 으 면 조건 테스트 결 과 는 0 입 니 다.
-x
파일 이 존재 하고 실행 가능 하 다 면 조건 테스트 결 과 는 0 입 니 다.
-p
파일 이 존재 하고 FIFO 파일 이 라면 조건 부 테스트 반환 결 과 는 0 입 니 다.
-s
파일 이 존재 하고 빈 파일 이 아니라면 조건 테스트 결 과 는 0 입 니 다.
1.4 문자열 테스트
test
조작 부호
설명 하 다.
str
지정 한 문자열 이 비어 있 는 지 판단 하기
str1==str2
문자열 이 같 으 면 0 입 니 다.
-n str
문자열 이 비 빈 문자열 인지 여 부 를 판단 합 니 다. 빈 문자열 이면 테스트 결 과 는 0 입 니 다.
-z str
빈 문자열 이면 테스트 결 과 는 0 입 니 다.
1.5 수치 테스트
문자열 과 유사 하 며, 수치 테스트 에 도 두 가지 형식의 문법 이 있다.
test number1 op number2
혹은
[ number1 op number2 ]
조작 부호
설명 하 다.
n1 -eq n2
n1 이 n2 와 같 는 지 비교 하면 테스트 결 과 는 0 이다.
n1 -ne n2
n1 이 n2 와 같 지 않 으 면 테스트 결 과 는 0 이다.
n1 -lt n2
n1 이 n2 보다 작은 지, n1 이 n2 보다 작 으 면 테스트 결 과 는 0 입 니 다.
n1 -le n2
n1 이 n2 보다 작 은 지, n1 이 n2 보다 작 으 면 테스트 결 과 는 0 이다.
n1 -gt n2
n1 이 n2 보다 큰 지, n1 이 n2 보다 크 면 테스트 결 과 는 0 이다.
n1 -ge n2
n1 이 n2 보다 크 고 n1 이 n2 보다 크 면 테스트 결 과 는 0 이다.
1.5 논리 연산 자
논리 연산 자 는 c 언어의 &, | |,! | 에 해당 합 니 다.조작 부호 | 설명 | |: --- |: --- | | |!exp | 논리 가 아 닙 니 다. 조건 식 이 가짜 이면 이 연산 자의 연산 결 과 는 진짜 | exp 1 - a exp 2 | 논리 와 조건 exp 1 과 exp 2 의 값 이 모두 사실 일 때 전체 표현 식 은 진짜 | exp 1 - o exp 2 | 논리 또는 조건 식 exp 1 과 exp 2 의 값 은 진실 이 고 전체 표현 식 은 진짜 | (exp) | 괄호 입 니 다. 표현 식 을 그룹 으로 나 누 어 결 과 를 우선 얻 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.