linux 如何创建多个zip文件并将它们移动到一个目录中?

t5zmwmid  于 2023-04-29  发布在  Linux
关注(0)|答案(2)|浏览(115)

我有一个简单的脚本,它从我的输入创建了一堆zip文件。

#!/bin/bash
echo "Declare directories to backup"
read dir_list
for dir in $dir_list
do
    name="${dir}.tbz"
    tar --create --verbose bzip2 --file=$name $dir
done

然后,我尝试添加一个move命令,通过在for循环中添加这一行来将它们移动到目录中。..

do
    name="${dir}.tbz"
    tar --create --verbose bzip2 --file=$name $dir
    mv $name ~/backups
done

但我最终得到了一个名为备份的Bzip存档文件。相反,我希望有一个文件夹命名为备份与所有的。我刚刚创建的TBZ文件。
我做错了什么?

jmo0nnb3

jmo0nnb31#

循环上面的mkdir -p "$HOME/backups"-您必须首先创建目录。-p标志用于在父目录不存在时创建父目录,但也用于在~/backups已经存在时避免失败。

svdrlsy4

svdrlsy42#

你可能没有创建目录。你必须创造它。最好的命令是mkdir -p。如果该目录存在,则必须在循环中使用mv $name ~/backups/。你也可以在备份目录中运行脚本,并输入主文件的相对或绝对地址。

相关问题