尝试在Shell函数内部使用unzip命令时出现“ Archive ::命令未找到”

时间:2019-04-19 14:39:07

标签: bash shell command sh unzip

我有一个很短的脚本,叫做“ ./wget_unzip.sh”:

#!/bin/sh
function wget_unzip {
    wget $1
    unzip ./patch\?zip
}

$(wget_unzip "https://www.mylinktoagerritpatch.org/patch?zip")

它应该得到一个名为“ patch?zip”的小文件(〜1KB),然后解压缩(其中有一个用于补丁的.diff文件)。这行

unzip ./patch\?zip
    在脚本的主体中,
  • 可以正常工作;但是,如果移到上述函数内部,它将开始失败

    ./wget_unzip.sh: line 7: Archive:: command not found
    

如果我尝试用/ usr / bin / unzip替换unzip,我会得到另一个错误:

./wget_unzip.sh: line 7: UnZip:: command not found

另一个命令wget一切都很好,所以我想知道解压缩有什么问题...

1 个答案:

答案 0 :(得分:1)

解压缩没有什么问题,只是调用函数的方式
删除$()