检查bash脚本参数时不需要';行不通
我正在编写一个bash脚本,它运行其他命令,例如调用yum来安装软件包列表,我希望我的脚本在默认情况下使其他命令静音,但如果我传递了-v参数,就让它们输出。我遇到的问题是,检查$1的值似乎无法正常工作。给定以下代码,我的脚本将始终回显“是”: 如果我只回显$1并将脚本传递给-v,那么它将按其应该的方式回显-v。我错过了什么 编辑: 找到了。继续播放脚本并将第一行更改为:检查bash脚本参数时不需要';行不通,bash,unix,Bash,Unix,我正在编写一个bash脚本,它运行其他命令,例如调用yum来安装软件包列表,我希望我的脚本在默认情况下使其他命令静音,但如果我传递了-v参数,就让它们输出。我遇到的问题是,检查$1的值似乎无法正常工作。给定以下代码,我的脚本将始终回显“是”: 如果我只回显$1并将脚本传递给-v,那么它将按其应该的方式回显-v。我错过了什么 编辑: 找到了。继续播放脚本并将第一行更改为: if [[ $1 == "-v" ]]; then 现在可以使用了吗?您需要在支票周围添加一些空格: 如果[[“$1”==”
if [[ $1 == "-v" ]]; then
现在可以使用了吗?您需要在支票周围添加一些空格:
如果[[“$1”==”-v”];那么
谢谢!我可以发誓我已经尝试过添加空格了,但没有成功,但正如我在编辑中提到的,它正在进行更改。昨晚我应该多睡一个小时。我的答案和你的编辑一定在提交时互相通过了。很高兴你成功了!别忘了,你可以把找到的答案贴出来,然后接受。下次我会尽量记住的P仍在等待它让我接受您的。不带空格的版本始终为true:当在[[]]
中给出单个参数时,如果该参数为非空,则[[
返回true。
if [[ $1 == "-v" ]]; then