我有一个功能,我缩小调试,但我看不到问题。以下是重现该问题的最小代码:
#!/bin/zsh
ahead=1
if [[ "$ahead" -ne 0 ]]; then
echo "test"
else
echo "testelse"
fi
我从执行此脚本开始:
./test:4: bad pattern :[[ 1
我无法理解问题所在。如果我用tio.run进行测试,它就可以了! 如果我将它复制粘贴到控制台中它也可以。
如果我删除shebang我得到:
./test: line 2: [[ 1: command not found
testelse
答案 0 :(得分:1)
我真的不知道如何或为什么但是正如@justsomebody在评论中指出的那样,[[
和$ahead
之间存在某种奇怪的空白字符。可能是vim或其他什么东西,如果你有任何线索,那就知道了。