在脚本中
(cd "$amdir/archive" && zip -rm "$amdir/archive/a.zip" "$amdir/archive/*")
导致zip警告:名称不匹配
当我回应它并将其复制粘贴到命令行时,它工作正常 任何想法为什么在linux上的bash脚本中不起作用?
答案 0 :(得分:1)
您$amdir/archive
之后已经在cd
。
因此,当您已经存在时,您的zip会尝试找到另一个目录$amdir/archive
。
当我尝试在不存在的目录上执行zip -rm
时,我可以重现错误消息。
此外,您应该考虑来自Inian的评论:引用*
您将其转义,因此没有bash模式匹配 - 请参阅例如here
所以第二部分应该简单地读到:
zip -rm a.zip *