我正在编写一个 shell 脚本,将 ZIP 文件解压到现有的文件层次结构中,可能会覆盖其中的某些文件。
问题是 unzip 命令要求确认:
replace jsp/extension/add-aspect.jsp? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
是否有强制解压以覆盖文件的选项?
答案1
根据http://www.manpagez.com/man/1/unzip/您可以使用-o
覆盖文件的选项:
unzip -o /path/to/archive.zip
请注意-o
,与大多数unzip
选项一样,必须前档案名称。
答案2
如果你需要解压以替换新文件,你可以使用
unzip -f archive.zip
但为了以后参考,你可以直接输入
unzip
您将获得此包的参数列表。
对于此案来说,可能的论点是:
-f freshen existing files, create none
-n never overwrite existing files
-q quiet mode (-qq => quieter)
-o overwrite files WITHOUT prompting
使用您认为更适合您需要的那个。
答案3
尝试使用
unzip -o <filepath/zipfile.zip> -d <path where you want files>
-o 是替换现有文件,最好是使用 unzip --help