我想用sed來檢查,如果一些字符串匹配的模式,然後保存匹配到一個變量:SED替代在bash圓括弧之間
function tst2(){
string='cms(1.2;1.5;1.3)'
regex='cms\(.*\)'
echo -e $string
if [[ $string =~ $regex ]]
then
myVar=$(echo -e $string | sed "s/cms\(.*\)/\1/g")
echo $myVar
else
echo "too badd!!!"
fi
}
控制檯輸出:
[[email protected]~]$ tst2
cms(1.2;1.5;1.3)
(1.2;1.5;1.3)
我想myVar的成爲 「1.2; 1.5; 1.3」(不圓括號)
'MYVAR = $(SED <<<「 $ string「)' – 123
使用更多引用 – Sorpigal
引用您的變量並用單引號分隔腳本,而不是雙引號。 –