Esta versão muito simplificada do meu script
#!/usr/bin/env bash
example="$(bash -rs <<'BASH' -- 'This has been executed in restricted shell'
echo "$1"
BASH
)"
echo "$example"
é executado sem problemas em um sistema com bash versão 5.1.4. No entanto, em outro sistema com bash versão 4.0.44, recebo o erro
line 2: unexpected EOF while looking for matching `)'
Se eu mudar o script para
#!/usr/bin/env bash
example="$(bash -rs <<'BASH'
echo 'This has been executed in restricted shell'
BASH
)"
echo "$example"
ou
#!/usr/bin/env bash
bash -rs <<'BASH' -- 'This has been executed in restricted shell'
echo "$1"
BASH
também funciona no sistema com bash versão 4.
Alguém tem uma ideia de qual poderia ser o motivo?