Como combinar arquivos que possuem espaços em seus formatos de nomes de arquivos [duplicados]

1

Eu tenho um arquivo test.txt que contém nomes de arquivos como abaixo, onde alguns nomes de arquivos terão espaços e outros não.

Mon - Tue corrected item.csv
Sat -Sun incorrect item.csv
Wed_THU_corrected_item.csv

Agora tenho um script em que tenho um loop for destinado a encontrar esses arquivos listados em test.txt em um determinado "caminho" onde os arquivos virão diariamente apenas para garantir a existência de arquivos. Então, por favor, deixe-me saber como eu posso combinar esses arquivos que têm espaços em seu nome.

for file in 'cat test.txt'
do
    if [ ! -f path/$file ];
    then action item
    fi
done
    
por deepak 20.12.2017 / 04:42

1 resposta

3

Nunca use cat para loops! Use while read... :

while read -r file; do
    [ -f "path/$file" ] || echo "$file"
done < test.txt
    
por 20.12.2017 / 04:47