If statement 将if条件与鱼壳中的contains函数相结合
我似乎无法将多个if条件与If statement 将if条件与鱼壳中的contains函数相结合,if-statement,fish,If Statement,Fish,我似乎无法将多个if条件与contains函数组合,请参见以下示例: > function if_test if contains "h" $argv; or contains "-h" $argv functions if_test return end end > if_test h # ... works fine. > if_test -h # ... shows documentation of co
contains
函数组合,请参见以下示例:
> function if_test
if contains "h" $argv; or contains "-h" $argv
functions if_test
return
end
end
> if_test h
# ... works fine.
> if_test -h
# ... shows documentation of contains
这很奇怪,因为以下函数按预期工作,所以为什么会有所不同
> if true; and false
echo what
else
echo how
end
how
> if true; or false
echo what
else
echo how
end
what
-h
被解释为包含
-帮助的缩写形式,因此它打印包含
帮助。使用--
发出选项结束的信号:
if contains h -- $argv; or contains -- -h $argv
请注意,这里的引号仅仅是安慰剂-
“h”
完全等同于h
。如果没有任何特殊字符(如空格),则引号不会改变任何内容。将-h
解释为包含-help
的一个选项,因此它会打印包含帮助。使用--
发出选项结束的信号:
if contains h -- $argv; or contains -- -h $argv
请注意,这里的引号仅仅是安慰剂-“h”
完全等同于h
。如果没有任何特殊字符(如空格),则引号不会改变任何内容