Portál AbcLinuxu, 10. května 2025 16:36
SPACE="ssssssssssssssssssssssssssssss" sed -i 's/^"" "xxx"$/"" "$SPACE"/' /tmp/fileProč se mi to nenahradí? Výsledek vypíše ....$SPACE.. ne obsah té proměnné
s/^"" "xxx"$/"" "$SPACE"/
. Uvnitř apostrofů se proměnné nenahrazují, pouze uvnitř uvozovek. Takže např. nahradit $SPACE
za '"$SPACE"'
.
sed -i 's/^"" "xxx"$/"" "$SPACE"/' /tmp/file ^.........................^Zvolil bych něco jenoduššího, třeba:
sed -i -e "s/^xxx$/$SPACE/" /tmp/fileOsobně nemám moc rád to střídání uvozovek, připadá mi to nečitelné, buď volím jednoduché, nebo složené a pak escapuji co je potřeba.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.