Eu tenho uma consulta sql em um arquivo de texto e tem uma linha parecida com:
PARTITION BY (date_key // 100000000);
Agora, quero substituir as duas barras com a palavra "DIV".
Para isso, fiz o seguinte em um script de shell:
strg=$(grep "PARTITION BY" $entry) ## $entry has the file_name
strg2=$(echo "$strg" | sed 's%\/\/%DIV%g')
Mas não funcionou como eu queria. Em outras investigações, fiquei sabendo que as barras ainda não foram descobertas.
echo "$strg"
dá PARTITION BY (date_key );
Eu também tentei
printf ">%s<\n" "$strg"
e
printf "%q\n" "$strg"
mas as saídas são:
>PARTITION BY (date_key );<
e
PARTITION\ BY\ \(date_key\ \)\;
, respectivamente.
Mas quando eu faço grep "PARTITION BY" <file_name>
na linha de comando, recebo a saída correta:
PARTITION BY (date_key // 100000000);
Alguém por favor pode apontar o que eu sinto falta?