Manpages

이 름

expr − 표 현 식 평 가

개 요

expr 표 현 식 ...
expr
{−−help,−−version}

설 명

이 맨 페 이 지 는 GNU 버 전 의 expr 을 다 룬 다 . expr 표 현 식 을 평 가 하 고 그 결 과 값 을 표 준 출 력 에 쓴 다 . 표 현 식 의 각 표 시 는 별 도 의 인 수 로 주 어 져 야 한 다 . 연 산 수 (Operand)는 숫 자 또 는 문 자 열 이 다 . 문 자 열 은 쉘 로 부 터 보 호 하 기 위 하 여 인 용 부 호 로 둘 러 싸 기 (quote)가 필 요 할 모 르 지 만 expr 에 서 는 그 렇 지 않 다 . expr 는 연 산 행 위 에 따 라 연 산 수 위 치 에 있 는 것 을 정 수 또 는 문 자 열 로 강 제 변 환 한 다 .

연 산 자 는 다 음 과 같 다 (우 선 순 위 증 가 순 에 따 라 나 열 ):

|

첫 번 째 인 수 가 널 또 는 0이 아 니 라 면 첫 번 째 인 수 를 내 주 고 그 렇 지 않 으 면 두 번 째 인 수 를 내 준 다 . ’or’ 연 산 에 해 당 한 다 .

&

첫 번 째 인 수 가 널 또 는 0이 아 니 라 면 첫 번 째 인 수 를 내 주 고 그 렇 지 않 으 면 0을 내 준 다 .

< <= = == != >= >

주 어 진 인 수 를 비 교 하 여 맞 으 면 1, 틀 리 면 0 을 반 환 한 다 . (===와 같 다 .) expr 은 양 쪽 인 수 를 숫 자 로 변 환 하 여 수 치 비 교 를 한 다 ; 한 쪽 변 수 라 도 숫 자 변 환 에 실 패 하 면 사 전 식 비 교 를 수 행 한 다 .

+ -

수 치 연 산 을 수 행 한 다 . 두 인 수 는 수 치 로 변 환 된 다 ; 실 패 할 경 우 에 러 가 발 생 한 다 .

* / %

수 치 연 산 을 수 행 한 다 ( ’%’은 C 언 어 에 서 처 럼 나 머 지 연 산 이 다 ). 두 인 수 는 숫 자 로 변 환 된 다 ; 실 패 할 경 우 에 러 가 발 생 한 다 .

:

패 턴 비 교 를 수 행 한 다 . 인 수 는 문 자 열 로 변 환 되 고 두 번 째 인 수 는 정 규 식 으 로 간 주 된 다 . 그 리 고 맨 앞 에 암 묵 적 으 로 ’^’ 을 추 가 한 다 . 첫 번 째 인 수 는 바 로 이 정 규 식 에 따 라 비 교 된 다 . 비 교 가 성 공 하 고 문 자 열 의 일 부 가 ’\(’ 와 ’\)’로 둘 러 싸 여 있 다 면 , 이 둘 러 싸 인 부 분 이 : 표 현 식 의 값 이 된 다 . 아 니 면 비 교 에 성 공 한 문 자 의 갯 수 를 정 수 로 반 환 한 다 . 비 교 가 실 패 하 면 : 연 산 자 는 ’\(’와 ’\)’ 가 사 용 된 경 우 에 는 널 을 아 니 면 0 을 반 환 한 다 . ’\(’ 와 ’\)’ 의 쌍 은 단 한 번 만 사 용 할 수 있 다 .

추 가 로 다 음 예 약 어 를 사 용 할 수 있 다 :
match
문 자 열 정 규 식

패 턴 비 교 를 할 수 있 는 또 다 른 방 법 이 다 . ’’문 자 열 : 정 규 식 ’’ 와 같 다 .

substr 문 자 열 위 치 길 이

문 자 열 중 에 서 위 치 로 부 터 최 대 길 이 만 큼 의 문 자 열 을 뽑 아 서 반 환 해 준 다 . 만 약 위 치 또 는 길 이 가 음 수 이 거 나 숫 자 가 아 닐 때 는 널 문 자 열 을 반 환 한 다 .

index 문 자 열 문 자 -클 래 스

문 자 열 에 서 문 자 -클 래 스 가 처 음 으 로 나 타 나 는 위 치 를 반 환 한 다 . 문 자 -클 래 스 의 어 떤 문 자 도 문 자 열 에 서 찾 을 수 없 는 경 우 0 이 반 환 된 다 .

length 문 자 열

문 자 열 의 길 이 를 반 환 한 다 .

괄 호 치 기 는 그 룹 묶 기 에 사 용 된 다 . 예 약 어 는 문 자 열 로 사 용 할 수 없 다 .

옵 션
GNU expr 이 단 하 나 의 인 수 로 실 행 되 면 다 음 옵 션 이 인 식 된 다 :

−−help

표 준 출 력 으 로 사 용 법 을 출 력 하 고 정 상 적 으 로 종 료 한 다 .

−−version

표 준 출 력 으 로 버 전 정 보 를 출 력 하 고 정 상 적 으 로 종 료 한 다 .

쉘 변 수 에 1 을 더 하 기 a:

a=`expr $a + 1`

다 음 은 변 수 안 에 저 장 된 화 일 명 에 서 디 렉 토 리 이 름 부 분 을 출 력 하 는 예 이 다 . a ( a 라 는 값 은 ’/’를 포 함 할 필 요 없 다 ):

expr $a : ’.*/\(.*\)’ ’|’ $a

따 옴 표 처 리 한 (quoted) 쉘 의 메 타 문 자 를 주 목 하 기 바 란 다 .

expr 은 다 음 과 같 은 종 료 상 태 를 반 환 한 다 :

0 표 현 식 이 널 이 거 나 0이 아 닐 때
1 표 현 식 이 널 이 거 나 0일 때
2 잘 못 된 표 현 식

번 역 자

이 만 용 <geoman [AT] nownuri.kr>
<freeyong [AT] soback.kr>