Eu tenho este script muito simples:
#!/bin/bash
read local _test
echo "_test: $_test"
Esta é a saída.
$ ./jltest.sh
sdfsdfs
_test:
Eu quero que a variável _test
seja apenas local. Isso é possível?
Eu tenho este script muito simples:
#!/bin/bash
read local _test
echo "_test: $_test"
Esta é a saída.
$ ./jltest.sh
sdfsdfs
_test:
Eu quero que a variável _test
seja apenas local. Isso é possível?
O builtin local só funciona dentro de uma função. Qualquer variável que você definir em seu script já será "local" para o script, a menos que você explicitamente
export
. Então, se você remover isso, funcionará como esperado:Ou você pode torná-lo uma função:
Mesmo dentro da função, o
local
builtin não funcionaria da maneira que você o escreveu:Seu código está realmente definindo uma variável chamada literalmente
local
: