Estou tendo problemas para entender o básico dos scripts do Bash. Aqui está o que eu tenho até agora:
#!/bin/bash
FILES="/home/john/my directory/*.txt"
for f in "${FILES}"
do
echo "${f}"
done
Tudo o que eu quero fazer é listar todas as .txt
arquivos em um for
loop para que eu possa fazer coisas com eles. Mas o espaço no my directory
e o asterisco *.txt
simplesmente não estão funcionando bem. Tentei usá-lo com e sem aspas duplas, com e sem chaves nos nomes das variáveis e ainda não consigo imprimir todos os .txt
arquivos.
Isso é uma coisa muito básica, mas ainda estou lutando porque estou cansada e não consigo pensar direito.
O que estou fazendo errado?
Consegui aplicar com êxito o script acima se meus ARQUIVOS não tiverem espaço ou asterisco ... tive que experimentar com ou sem o uso de aspas duplas e chaves para fazê-lo funcionar. Mas no momento em que tenho espaços e um asterisco, tudo estraga tudo.