답변:
다른 방법들 :
sed
sed 's/.*(\(.*\))/\1/' file
펄
perl -pe 's/.*\((.*)\)/$1/' file
또는
perl -lanF"[()]" -e 'print $F[1]' file
또는
perl -pe 's/.*\((.+?)\).*/$1/;' file
awk
awk -F"[()]" '{print $2}' file
껍질
while IFS="()" read a b; do echo "$b"; done < file
-F
awk가 줄을 필드로 나누는 데 사용할 문자를 선택할 수있게합니다. 여기서는 []
여는 괄호와 닫는 괄호로 구성된 문자 클래스 ( )를 제공합니다 . 따라서 줄을 껐다 켜게 (
됩니다 )
. 결과적으로 두 번째 필드는 괄호의 내용이됩니다. 예를 들면, 문자열로 G8 = P(G1,G3)foo
, $1
것 G8 = P
, $2
것 G1,G3
및 $3
것 foo
.
sed 's/^.*(//;s/)$//' /path/to/file
이것을 분해하려면 :
sed
는 IS s
tream의 ed
당사 홈페이지는. 's/^.*(//;s/)$//'
로 전송되는 스크립트 sed
는 다음과 같이 분류됩니다.
s/^.*(// substitute nothing for the beginning of any line (`^`) followed by anything up until an open-paren (`(`)
s/)$// substitute nothing for a close-paren (`)`) followed immediately by the end of a line