expr

expr
expr
Expr-example.png
의 예expr기본적인 합계를 실행하는 명령어
원저작자딕 헤이트
(AT&T연구소)
개발자다양한 오픈 소스 및 상용 개발자
초기 릴리즈1979년; 43년 전 (1979년)
운영 체제Unix, Unix 계열, IBM i
플랫폼크로스 플랫폼
유형명령어

expr은 Unix 및 Unix유사운영체제시스템에서의 명령줄 유틸리티로 식을 평가하여 대응하는 값을 출력합니다.Unix v7에서 처음 등장했습니다.이 명령어는 일반적인 GNU Unix 유사 [1]유틸리티의 nativeWin32ports UnxUtils 컬렉션의 일부로 Microsoft Windows용 별도의 패키지로 사용할 수 있습니다.expr 명령어는 IBM i 운영 [2]체제에도 이식되었습니다.

개요

expr은 정규 표현과 일치하는 패턴을 포함하여 정수 표현 또는 문자열 표현을 평가합니다.에 포함된 각 기호(연산자, 값 등)는 별도의 매개 변수로 지정해야 합니다.표현식 쓰기 시 발생하는 문제의 대부분은 expr이 처리하는 문자에 대해 호출 명령줄 셸이 동작하지 않도록 하는 것입니다.

구문

구문: expr

사용 가능한 연산자

  • 정수: 덧셈, 뺄셈, 곱셈, 나눗셈
  • 문자열의 경우: 정규 표현과 일치; 일부 버전에서는 문자열("색인")에서 문자 집합 찾기, 하위 문자열("색인") 찾기, 문자열 길이("길이")
  • 둘 중 하나: 비교(비교, 동일하지 않음, 이하 등)

다음으로 (POSIX에 준거하지 않는) 부울식을 사용한 예를 나타냅니다.

expr length "def" "<" 5 " " 15 - 4 " >" 8

이 예에서는 "1"을 출력합니다.이는 길이 "abcdef"가 6으로 5보다 작지 않기 때문입니다(따라서 반환의 왼쪽은 0을 반환합니다).그러나 15 빼기 4는 11이고 8보다 크므로 오른쪽이 참이고, 이것이 참 또는 참이 되므로 1이 됩니다.이 예에서는 프로그램 종료 상태가 0입니다.

순수 산술의 경우 bc를 사용하는 것이 종종 더 편리합니다.예를 들어 다음과 같습니다.

에코 "3 * 4 + 14 / 2" bc

그 표현을 단일 인수로 받아들이기 때문입니다.

휴대용 셸 프로그래밍의 경우 "index", "length", "match" 및 "substr" 명령어의 사용은 피해야 합니다. 문자열 매칭은 가능한 상태로 유지되지만 "string: regexp" 구문을 사용해야 합니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "Native Win32 ports of some GNU utilities". unxutils.sourceforge.net.
  2. ^ IBM. "IBM System i Version 7.2 Programming Qshell" (PDF). Retrieved 2020-09-05.{{cite web}}: CS1 maint :url-status (링크)

외부 링크