我有一个问题,gaslights我。BASH:为什么`printf`返回1?
这才是我的bash脚本 “富” 降低的问题:
#!/bin/bash
function Args()
{
[[ "$1" == "-n" ]] && [[ -d "$2" ]] && printf "%s\n" "new ${3}"
[[ "$1" == "-p" ]] && [[ -d "$2" ]] && printf "%s\n" "page ${3}"
}
[[ $# -eq 3 ]] && Args "[email protected]"
echo $?
现在,当我执行这个代码,会发生以下情况:
$ ./foo -n/bar
new bar
1
然而,这作品:
$ ./foo -p/bar
page bar
0
请问,有谁能解释一下吗?
很抱歉,如果这是一个已知的“东西”,我的googleing技能有待提高......
AHHH,我笨的菜鸟!我知道这个问题..谢谢反正 –