pbies Asked: 2018-12-09 02:21:11 +0800 CST2018-12-09 02:21:11 +0800 CST 2018-12-09 02:21:11 +0800 CST Intervalo de strings Bash e substituir 772 Para imprimir parte da string, substitua ,pelo .comando I use: echo "${q:16:6}" | sed 's/,/./' É possível usar algo como: echo "${q:16:6/,/.}" porque não funciona? bash sed 1 respostas Voted Best Answer nohillside 2018-12-09T02:30:45+08:002018-12-09T02:30:45+08:00 Você não pode empilhar/aninhar a expansão de parâmetros no Bash, então nem mesmo echo "${${q:16:6}/,/.}" vai funcionar. (Expansões aninhadas como essa funcionam no Zsh, no entanto.) Se você quiser permanecer no Bash, precisará usar uma variável temporária: foo="${q:16:6}" echo "${foo/,/.}"
Você não pode empilhar/aninhar a expansão de parâmetros no Bash, então nem mesmo
vai funcionar. (Expansões aninhadas como essa funcionam no Zsh, no entanto.)
Se você quiser permanecer no Bash, precisará usar uma variável temporária: