从数组中删除基于文件名的文件

时间:2019-10-09 23:40:40

标签: arrays bash delete-file

试图编写一个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行只是一个示例。

0 个答案:

没有答案