Это мой foo.sh
:
#!/bin/bash
sed -i -- 's/<meta http-equiv="Content-Security-Policy" content="default-src * data: blob: 'unsafe-inline' 'unsafe-eval' ws: wss:;">/<meta my custom meta>/g' ../app-prod/ios/project/www/application/index.html
Я не могу понять, как избежать одинарных и двойных кавычек и символов звездочки.
Вероятно, вы хотите использовать двойные кавычки в вашем sed. Затем избегайте двойных кавычек и подстановочных знаков внутри вашего выражения. Должно быть что-то вроде этого:
sed -i "s|<meta http-equiv=\"Content-Security-Policy\" content=\"default-src \* data: blob: 'unsafe-inline' 'unsafe-eval' ws: wss:;\">|<meta my custom meta>|g" /path/to/file.html
(не уверен в использовании двойных кавычек для всего выражения. Я, кажется, помню, что экранирование одинарных кавычек в одинарных кавычках может не работать под некоторые условия, ... которые я не мог назвать).