在bash脚本中切换两个命令?

时间:2015-01-09 09:10:14

标签: linux bash shell

我想使用一个简单的bash脚本来打开/关闭笔记本电脑的触控板。我知道我可以用 synclient Touchpadoff=1 关闭触摸板并使用 synclient Touchpadoff=0 打开它。但有没有办法在这两个命令之间切换(即,如果触摸板关闭,然后将其打开,反之亦然)?

谢谢!

2 个答案:

答案 0 :(得分:5)

执行synclient -l,您可以看到

    TouchpadOff          = 0

(或= 1)
然后你只需要grep这个值并用另一个值调用synclient Touchpadoff= 例如,在脚本toggleTouchpad.sh中,您可以拥有

#!/bin/bash
synclient TouchpadOff=$(synclient -l | awk '/TouchpadOff/{print !strtonum($3)}')

awk命令将打印"对面"第三个字段(=是第二个字段),所以如果它是1,它将打印0,如果它是0,它将打印1。

答案 1 :(得分:0)

不是很好,但易于实现的解决方案是保存在/tmp/touch.state触摸板的实际状态。
如果是' 0' 0 - 启用触控板和存储' 1'在文件中,反之亦然