如何在 Debian 中使用 bash 压缩文件,解压缩时弹出单个目录



我正在尝试将一个名为"project"的目录压缩到名为"BARBIER_MAM.zip"的.zip文件中。但是,在解压缩.zip文件时,显示包含的所有文件,我必须手动将它们放回目录中。 这是我目前的做法。在"项目"目录中,我有一个带有"存档"目标的制作文件:

archive: clean
zip -r BARBIER_MAM.zip .

我也试过:

archive: clean
cd ..
zip -r BARBIER_MAM.zip project

但是我得到了一个错误:

zip warning: name not matched: project

如果你问,是的,它必须在必须压缩的目录中包含的 makefile 中完成。

从制作文档(强调我的(:

当需要执行配方以更新目标时,通过为配方的每一行调用新的子外壳来执行它们,除非 .ONESHELL 特殊目标生效(请参阅使用一个外壳((在实践中,make 可能会采用不影响结果的快捷方式。

请注意:这意味着设置 shell 变量和调用 shell 命令(如 cd(为每个进程设置本地上下文不会影响配方中的以下行。如果要使用 cd 影响下一条语句,请将这两个语句放在一个配方行中。

因此,在第二个示例中,将其更改为:

archive: clean
cd .. && zip -r BARBIER_MAM.zip project

最新更新