キーを押すと終了する機能を追加したいスクリプトがあります。これまで私のコードは次のようになります。
keyinput=''
if [ -t 0 ]; then stty -echo -icanon -icrnl time 0 min 0; fi
while [ "x$keyinput" = "x" ]; do
echo "Press Any Key to Exit."
echo "Users currently logged on:"
w #Display who is currently logged on
echo "Disk space utilization:"
df -h #Display disk space utilization in human readable form
echo "Memory and CPU Utilization:"
ps axo user,pmem,pcpu #Display Username, % of Memory Used, CPU Usage %
keyinput="`cat -v`"
done
if [ -t 0 ]; then stty sane; fi
echo "Thanks for using the Live Monitor, you pressed '$keyinput' to exit."
奇妙な理由でキーストローク操作を終了できません。
答え1
変える
keyinput="`cat -v`"
~のため
read -r -n 1 keyinput