Como substituir globalmente a expressão pela sintaxe de substituição de colchetes do bash?

3

Eu quero usar a sintaxe bash ${var/pattern1/pattern2} para substituir o conteúdo de $ var, mas para todos os padrões de correspondência pattern1 em vez do primeiro.

A=aa 
echo ${A/a/b}
ba

Eu quero encontrar bb em vez de ba.

    
por user123456 01.10.2016 / 19:02

1 resposta

5

Você pode tentar esta sintaxe que dá saída:

A=aa 
echo ${A//a/b}
bb

${A//a/b} substitui todas as correspondências de a com b. Considerando que ${A/a/b} substituirá apenas a primeira partida de a.

Mais detalhes sobre a Manipulação de Strings Bash podem ser encontrados aqui .

    
por snoop 01.10.2016 / 19:20

Tags