I wykonać następujący skrypt bash:Jak użyć zmiennej skryptu bash z sed
#!/bin/bash
version=$1
echo $version
sed 's/\${version.number}/$version/' template.txt > readme.txt
Czekam zastąpić wszystkie wystąpienia $ {version.number} z zawartością zmiennej „wersji” . Zamiast tego wstawiana jest dosłowna wersja tekstowa $.
Co muszę zrobić, aby sed używał zamiast tego bieżącej wartości wersji $?
Ale znak dolara musi zostać usunięty, ponieważ wyrażenie jest traktowane jako wyrażenie przez "sed". Myślę więc, że powinno to być '\\ $'. – Philipp
@Philipp, tak naprawdę znak '$' jest tylko kotwicą, gdy jest ostatnim znakiem wyrażenia regularnego (lub ewentualnie podwyrażeniem). Ale przyznaję, że miałem szczęście. ;) Opcjonalnie można dodać ukośnik, ale jest to '\\\ $'. –
Dzięki za poprawkę. – Philipp