Мне повезло с использованием:
from win32con import VK_CAPITAL
if GetKeyState(VK_CAPITAL) == 1:
print ("CAPS Lock is on.")
elif GetKeyState(VK_CAPITAL) == 0:
print ("CAPS Lock is off.")
Это на компьютере с Windows с Python3, поэтому не уверен на 100%, работает ли он и на Linux, но стоит отметить как вариант для тех, кому нужно сделать это на Windows, в этом случае это точно работает -I сам видел.
Рэнди
Использовать функцию оболочки:
runmaybe () {
if [[ $mode == "--simulate" ]]
then echo $@
else $@ 2>&1 > /dev/null
fi
}
и это доказательство концепции:
#!/bin/bash
filethatwillsavestderr="/tmp/foo"
filethatwillsavestdout="/tmp/bar"
mode="--simulate" #switch this to another mode to see the effect
runmaybe () {
if [[ $mode == "--simulate" ]]
then echo "I should run '$@' but i'm not really doing it"
else $@ > $filethatwillsavestdout 2> $filethatwillsavestderr
fi
}
runmaybe ls