Ich möchte sed verwenden, wenn einige String-Match zu einem Muster zu überprüfen und dann das Spiel in eine Variable speichern:SED in bash zwischen runden Klammern ersetzen
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
}
Console Ausgabe:
[[email protected]~]$ tst2
cms(1.2;1.5;1.3)
(1.2;1.5;1.3)
ich möchte meineVar werden "1.2; 1.5; 1.3" (ohne die runden Klammern)
'myvar = $ (sed <<<" $ string ")' – 123
Verwenden Sie mehr Zitate – Sorpigal
zitieren Sie Ihre Variablen und begrenzen Sie Skripte mit einfachen Anführungszeichen, nicht doppelt. –