쉘에서 문자열 연산

2013. 7. 12. 19:00Server/Ubuntu

'expr'이란 것이 있다.

주어진 연산을 처리하는데 사용하는 쉘 명령어이며, 해당 명령어를 이용하여 문자열 연산을 할 수 있다.

기본 사용

>> expr 1 + 1

2


문자열 연산

#!/bin/sh

CURR=/home/user/test1/test2


#/home/user/ 와 일치하는 index를 알고 싶다.

USERINDEX=`expr match $INSTALL_DIR '/[A-Za-z0-9]*/[A-Za-z0-9]*/'`

echo $USERINDEX                   # 아마도 11이란 숫자 리턴


#/home/user/만 추출 하고 싶다.

echo `expr substr $INSTALL_DIR 1 $USERINDEX`     


#/home/user/ 뒤에 data란 문자열을 더하고 싶다.

echo `expr substr $INSTALL_DIR 1 $USERINDEX'"data"    #붙이려고 하는 문자열을 그냥 따옴표로 붙이면 됨           


정규식... 생각 보다 많이 유용하다 -_-;;

안일했던 지난날 미안~