我必须编写一个脚本,每三秒钟打印一次用户或系统使用的CPU百分比。如果用户键入特定的字符串,则输出必须来回切换。
如何在不中断输出流的情况下检查输入? 读取命令会阻止它,我的想法已经用完了。
答案 0 :(得分:0)
您可以通过创建文件轻松地将信息获取到脚本中。听起来您的程序有一个循环并进入了睡眠状态。为什么不检查文件是否存在?
<input type="text" id="orangeDateOfBirthForm" name="orangeDateOfBirthForm" class="form-control validate" required>
<label data-error="wrong" data-success="right" for="orangeForm-email">Date of Birth</label>
答案 1 :(得分:0)
您可以将read命令与超时选项read -t
一起使用。例如,以下脚本检测字符串'cc'。您还可以指定要用-N
读取的字符数,这样用户就不必按Enter键。
flag=0
while true; do
sleep 3
if [[ $flag -eq 0 ]];then
echo user
else
echo sys
fi
read -t 0.25 -N 2 input
if [[ $input = "cc" ]] ; then
[[ $flag -eq 0 ]] && flag=1 || flag=0
fi
done