所以我有一个程序(比如,programA),它会给我一个输出,例如:yes, no, maybe, probably, possibly, impossible, banana。
我想制作一个脚本,它可以根据该输出执行某些操作,无论它是什么。假设我只需要考虑yes,maybe和banana。
到目前为止,我会做的是case像这样使用:
case $program_output in
yes) echo "good word: $program_output" ;;
maybe) echo "good word: $program_output" ;;
banana) echo "good word: $program_output" ;;
*) echo "bad word: $program_output" ;;
esac
Run Code Online (Sandbox Code Playgroud)
但最近我在摆弄这个if语句,发现我可以像这样更快地做到这一点:
if [[ "yesmaybebanana" =~ ${program_output} ]]; then
echo "good word: ${program_output}"; else echo "bad word: ${program_output}";
fi
Run Code Online (Sandbox Code Playgroud)
有什么理由我不应该为此使用该if语句吗?这是一种$program_output不能有空格的情况,并且它是可以输出的有限单词列表。
我制作了一个脚本,每 10 分钟在命令行上告诉我笔记本电脑的电池寿命,但问题是它在命令行上显示了它。我想让它打印在例如终端的右上角。
那可能吗?
示例:这是终端窗口:
=====================
|texttexttexttexttex|
|t |
|moretext |
|somethingsomething |
|me@me:~$... |
=====================
Run Code Online (Sandbox Code Playgroud)
在命令之后,这是结果:
=====================
|texttexttextBAT-50%|
|t |
|moretext |
|somethingsomething |
|me@me:~$... |
=====================
Run Code Online (Sandbox Code Playgroud)
所以它会覆盖那里写的任何内容。