我的目录中有一些文件;其中一些是 .qcow2 扩展名。我只想备份扩展名为 .qcow2 的文件。
示例:我有 5 个扩展名为 .qc0w2 的文件,它们是:vm1.qcow2、vm2.qcow2、vm3.qcow2、vm4.qcow2 和 minnow.qcow2。我的目的是使用 gzip 命令将它们备份到 /backup 目录中。它应该类似于以下内容:vm1.qcow2.backup.gz、vm2.qcow2.backup.gz、vm3.qcow2.backup.gz、vm4.qcow2.backup.gz 和 minnow.qcow2.backup.gz
我尝试了以下命令:
gzip < *.qcow2 > /backup/*.qcow2.backup.gz
但这不起作用。你能帮我看看我犯了什么错误吗?
答案1
gzip 本身没有将 zip 文件输出到另一个目录的选项,您必须在另一个命令中执行此操作。
gzip *.qcow2 -S .backup.gz
mv *.qcow2.backup.gz /backup
答案2
由于您不需要组合存档,因此循环遍历每个文件并将其压缩到自己的备份文件:
for file in *.qcow2
do
gzip -c "$file" > /backup/"$file".backup.gz
done
该-c
选项表示将压缩结果发送到标准输出,我们将其重定向到我们想要的文件名。