zip 警告 - 名称不匹配

问题描述 投票:0回答:2

在 bash 脚本中使用 zip 时出现以下错误

zip warning: name not matched: test.png test2.png

#!/bin/bash
files_to_zip="test.png test2.png"
zipfile_name=result$(date "+%Y.%m.%d-%H.%M.%S").zip
zip "$zipfile_name"  "$files_to_zip"

注意:图像与脚本位于同一目录中,当我执行

zip test.zip test.png test2.png
时,zip 就创建好了。

bash unix zip
2个回答
7
投票

当名称组合在相同的引号内时,整个字符串将被视为文件名。使用

zip "$zipfile_name" $files_to_zip

相反。如果您的 png 名称包含空格等特殊字符 - 在

$files_to_zip
变量中添加引号或转义此字符


0
投票

在对目录中的文件进行排序之前添加此行

IFS=$'\n' 
files=($(ls | sort))

这对我有用,可以处理正在转换为 zip 文件的输入文件中的数字、破折号、特殊字符

© www.soinside.com 2019 - 2024. All rights reserved.