Wie macht man ein grep in einer Variablen? Ich habe die wget-Ausgabe in einer Variablen gespeichert und muss einige Zeichenfolgen daraus extrahieren.
Wie der Inhalt der Variablen ist
upgrade http://wordpress.org/download/ http://wordpress.org/wordpress-3.0.5.zip 3.0.5 en_US 4.3 4.1.2
Ich muss überprüfen, ob die Zeichenfolge das Wort upgrade enthält , also kann ich ein einfaches grep machen und dann den Exit-Status davon mit $? überprüfen und fortfahren.
Wie bekomme ich den Wert 3.0.5 welches ist eigentlich das vierte Wort?
Und wie kann man tatsächlich in eine Variable eingreifen?
Akzeptierte Antwort:
Wenn Sie nur nach einem Wort suchen, können Sie eine for-Schleife verwenden.
STRING="upgrade this if you can"
for x in $STRING; do
echo $x
if [ "$x" = 'upgrade' ]; then
echo found
y=$x
break
fi
done
echo $y Wenn das Upgrade immer an der gleichen Position ist, können Sie die Array-Zuweisung versuchen.
declare -a z
z=($STRING)
echo ${z[0]}