Preciso encontrar o arquivo de ambiente dentro dos meus scripts de shell

Preciso encontrar o arquivo de ambiente dentro dos meus scripts de shell

Tenho vários arquivos de ambiente, que terminam com .env. Quero encontrá-los em scripts de shell existentes no mesmo diretório. Eu faço

for i in [ ls -1 *env ]    
do
    grep $i *.sh >> ttt    
done    

Ele me mostra os seguintes erros:
grep: RE erro 49: [] desequilíbrio.
grep: opção ilegal -- 1
Uso: grep -hblcnsviw arquivo de padrão. . .

Você poderia me dizer onde está o meu erro?

Responder1

Você poderia me dizer onde está o meu erro?

$ shellcheck myscript

Line 3:
    grep $i *.sh >> ttt    
         ^-- SC2086: Double quote to prevent globbing and word splitting.
            ^-- SC2035: Use ./*glob* or -- *glob* so names with dashes won't become options.

$ 

FonteShellCheck encontra bugs em seus scripts de shell.

informação relacionada