Linux shell에서 간단하게 substring을 하는 방법은 다음과 같다.

s="this is test string."
echo \${s#* }\  = ${s#* }   #is test string.
echo \${s##* }  = ${s##* }  #string.
echo \${s% *}\  = ${s% *}   #this is test
echo \${s%% *}  = ${s%% *}  #this

#는 string.left(), %는 string.right() 같은 기능을 한다고 보면 되며, 일반적인 substring과는 ‘구분자’를 기준으로 자른다는 점이 약간 다르다.

4가지 substring 방법은 전략, 후략을 나타내기 위해 *를 사용하며 자세한 의미는 다음과 같다:

op desc
# 첫 delm 왼쪽 문자열 삭제
## 끝 delm 왼쪽 문자열 삭제
% 끝 delm 오른쪽 문자열 삭제
%% 첫 delm 오른쪽 문자열 삭제