我知道这似乎相当微不足道。但我不知道我哪里出错了。我有一个shell脚本,我根据输入参数下载一个包,然后提取包名称。我就是这样做的:
wget $1
echo $1 | awk -F/ '{print $NF}'
我像bash scrip.sh http://apache.claz.org/phoenix/apache-phoenix-4.10.0-HBase-1.2/bin/apache-phoenix-4.10.0-HBase-1.2-bin.tar.gz
我下载了包,然后第二行将输入变量沿/
分隔符分割,得到apache-phoenix-4.10.0-HBase-1.2-bin.tar.gz
。现在我想将第二行的结果分配给变量。我将脚本更改为dir=$($1 | awk -F/ '{print $NF}')
并在脚本中添加echo $dir
以查看结果。但是我一直遇到这个错误:line 2: http://apache.claz.org/phoenix/apache-phoenix-4.10.0-HBase-1.2/bin/apache-phoenix-4.10.0-HBase-1.2-bin.tar.gz: No such file or directory
我尝试将命令包装到``
但问题仍然存在。我没有进入任何目录,所以我不知道为什么这个错误会一直显示出来。