Estou tentando obter o conteúdo de um diretório usando o shell script.
Meu script é:
for entry in `ls $search_dir`; do
echo $entry
done
Onde $search_diré um caminho relativo. No entanto, $search_dircontém muitos arquivos com espaços em branco em seus nomes. Nesse caso, esse script não é executado conforme o esperado.
Eu sei que poderia usar for entry in *, mas isso só funcionaria para o meu diretório atual.
Sei que posso mudar para esse diretório, usar e for entry in *depois voltar, mas minha situação particular me impede de fazer isso.
Eu tenho dois caminhos relativos $search_dire $work_dir, e eu tenho que trabalhar em ambos simultaneamente, lendo-os criando / excluindo arquivos neles etc.
Então, o que eu faço agora?
PS: Eu uso bash.
for entry in "$search_dir/*"que não funciona? Por que precisamos colocar/*fora das aspas?