удалить файлы на основе имен файлов из массива - PullRequest
0 голосов
/ 10 октября 2019

Попытка написать сценарий bash, который удаляет файлы на основе имен из массива, считываемого из отдельного файла.

Я включаю файл для массива в сценарий;delete_files.inc и кажется, что он заполняет массивы просто отлично, но когда я пытаюсь удалить файлы из структуры папок, я получаю сообщение об ошибке «команда не найдена»

function get_array() {
    array=() # Create array
    while IFS= read -r line # Read a line
    do
        array+=("$line") # Append line to the array
    done < "$1"
}


get_array ${file_cc}
for file in "${array[@]}"
do
    if [ $delete -eq 1 ]; then
        find ${startdir} -type f -name "$line" -exec rm -f {} 2>/dev/null \;
      else

        echo  "Would've deleted: ${files[@]}"
    fi
done

Я получаю следующие ошибки:

home/<user>/bin/delete_files.inc: line 19: *.pdf: command not found

и любое другое имя файла в массиве с той же ошибкой. Строка 19 - это только один пример.

...