zip archive.zip file1.txt file2.log config.json 支持绝对/相对路径,空格文件名需加引号;可用通配符、filelist.txt 或 find 辅助批量压缩;注意权限、路径及 -m 选项风险。
直接列出所有文件名,用空格隔开,就能一次性压缩多个不相关的文件。
不需要它们在同一个目录或有共同前缀,只要路径正确、你有读取权限,就可以压进一个 zip 包里:
zip archive.zip file1.txt file2.log config.json
zip backup.zip /home/user/doc.pdf ./notes.md ../data.csv
zip archive.zip "my report.pdf" "config file.ini"
当要压缩的文件较多、位置分散时,手动列容易出错。可以用通配符或命令组合辅助:
zip archive.zip *.txt *.log
zip archive.zip $(cat filelist.txt)
find 按条件找文件(例如最近修改的):find /path -name "*.conf" -mtime -7 | xargs zip archive.zip
执行失败通常是因为权限或路径问题:
sudo(谨慎使用)unzip -l archive.zip 查看内容确认加上 -m 选项可移动式压缩,即压缩完成后自动删除源文件:
zip -m archive.zip file1 file2 file3-m 不支持目录,只适用于普通文件;且不可逆,操作前建议先备份关键数据