링크 ux 학습 (10) Shell 의 제어 문

2932 단어
목차
  • 1. 조건 시험 문
  • 1.1 test 문장
  • 1.2 [] 문장
  • 1.3 파일 테스트
  • 1.4 문자열 테스트
  • 1.5 수치 테스트
  • 1.5 논리 연산 자

  • @ (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) | 괄호 입 니 다. 표현 식 을 그룹 으로 나 누 어 결 과 를 우선 얻 습 니 다.

    좋은 웹페이지 즐겨찾기