У меня есть скрипт bash для teamcity.It ставит значение переменных build в файл с использованием заполнителей.bash auto escaping не-буквенно-цифровых символов
sed -i ""
-e "s/BUNDLE_VERSION/%bundle_version%/"
-e "s/BUNDLE_ID/%bundle_id%/"
-e "s/APP_TITLE/%title%/" "%system.teamcity.build.tempDir%/info.plist"
% var% - заменено на значение var перед запуском скрипта bash по команде.
Он не работает с переменными, которые имеют '
, "
, /
и, возможно, другие не буквенно-цифровые символы. Например, с title = Auto Shop "SuperCar"
он выходит из строя
[12:22:07] СЭД: 1: "" s/Приложению APP_TITLE/Авто ... ": недопустимый код команды"
Как исправить скрипт для работы с не-буквенно-цифровыми символами?
Не используйте sed. Используйте awk или perl и передайте переменные в. – 123