Como escapar desta string do script do bash?

0

Este é o meu 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

Eu não consigo entender como escapar single & aspas duplas e símbolos de asterisco ..

    
por Edgar 02.12.2016 / 17:43

1 resposta

2

Você provavelmente vai querer usar aspas duplas em torno do seu sed. Em seguida, escape entre aspas duplas e curingas dentro da sua expressão. Algo assim deveria fazer:

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

(não tenho certeza sobre a duplicação da expressão inteira. Eu pareço lembrar que escapar aspas simples em expressões com aspas simples pode falhar sob algumas condições, ... que eu não sabia nomear).

    
por 02.12.2016 / 17:48