我想编写一个每秒刷新一次的脚本(作为参数给出),它会显示按运行进程数排序的用户。
到目前为止,我的代码是:#!/bin/bash
s=$1
tput sc;
while true
do
ps hax -o user | sort | uniq -c | sort -nr
sleep $s
tput rc;
tput el
done
我希望获得类似刷新效果的东西,但所有这些代码都是在最后一个输出处连接。有一种方法可以让它覆盖最后一行。(PS进一步我必须实现只显示前n个用户( n是从键盘给出的)所以我有点需要把它链接到这个。
答案 0 :(得分:1)
您可以尝试将擦除行功能添加到每行的末尾,例如,
#!/bin/bash
s=$1
tput sc;
EL=$(tput el)
while true
do
tput rc
ps hax -o user | sort | uniq -c | sort -nr | sed -e "s/\$/$EL/"
sleep $s
done