【发布时间】:2013-01-24 21:39:40
【问题描述】:
我想编写一个 Bash 脚本来检查是否至少有一个参数,如果有一个参数,则该参数是 0 还是 1。
这是脚本:
#/bin/bash
if (("$#" < 1)) && ( (("$0" != 1)) || (("$0" -ne 0q)) ) ; then
echo this script requires a 1 or 0 as first parameter.
fi
xinput set-prop 12 "Device Enabled" $0
这会产生以下错误:
./setTouchpadEnabled: line 2: ((: ./setTouchpadEnabled != 1: syntax error: operand expected (error token is "./setTouchpadEnabled != 1")
./setTouchpadEnabled: line 2: ((: ./setTouchpadEnabled -ne 0q: syntax error: operand expected (error token is "./setTouchpadEnabled -ne 0q")
我做错了什么?
【问题讨论】:
-
看起来您正在使用
sh ./setTouchpadEnabled而不是 bash 运行脚本。 -
@jordanm 你指的是 shebang 行中没有 bang 吗?
标签: bash comparison integer