今天在设备中指令top命令出错;
/mnt/sdcard # cd ..
/ # top
TERM environment variable not set.
/ # top
TERM environment variable not set.
网上给了一个解决方案:
[root@localhost ~]# docker exec -ti redis /bin/bash
[root@9bf53a30e849 /]# top
TERM environment variable not set.
[root@9bf53a30e849 /]# echo $TERM
dumb
[root@9bf53a30e849 /]# export TERM=dumb
[root@9bf53a30e849 /]# top
top - 11:14:13 up 85 days, 20:18, 0 users, load average: 8.75, 8.61, 8.53
Tasks: 28 total, 1 running, 27 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.7 us, 0.3 sy, 12.5 ni, 85.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 13175309+total, 10896009+free, 9802708 used, 12990288 buff/cache
KiB Swap: 4194300 total, 4194300 free, 0 used. 11734181+avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1 root 20 0 11604 1364 1164 S 0.0 0.0 1:04.54 run.sh
11 nagios 20 0 44212 1352 804 S 0.0 0.0 5:50.39 nrpe
126 root 20 0 22720 1308 700 S 0.0 0.0 0:38.39 crond
128 root 20 0 82488 3484 2640 S 0.0 0.0 0:00.00 sshd
129 root 20 0 322668 2096 1792 S 0.0 0.0 115:39.77 LiveDistribute.
130 root 20 0 322668 1924 1736 S 0.0 0.0 116:06.00 LiveDistribute.
131 root 20 0 322668 2080 1736 S 0.0 0.0 116:44.28 LiveDistribute.
132 root 20 0 322668 1932 1736 S 0.0 0.0 113:00.33 LiveDistribute.
133 root 20 0 322668 1912 1736 S 0.0 0.0 111:23.64 LiveDistribute.
134 root 20 0 257132 2064 1724 S 0.0 0.0 11:13.00 LiveDistribute.
135 root 20 0 257132 2060 1724 S 0.0 0.0 11:30.31 LiveDistribute.
136 root 20 0 257132 2064 1724 S 0.0 0.0 11:12.71 LiveDistribute.
137 root 20 0 257132 4100 1724 S 0.0 0.0 11:25.46 LiveDistribute.
但是在我的设备上失败了:
/ # top
TERM environment variable not set.
/ # echo $TERM
/ # echo $TERM
解决方法:
在运行top时加上 -b参数。或者直接重启也可以。
研发给了另一种方案是用ssh ,用htop。
我这边直接用usb线adb调试报错:
/ # htop
Error opening terminal: unknown.
/ #
解决方法:
在调用的报错程序前,先设置环境变量:export TERM=xterm
/ # export TERM=xterm
/ # htop
测试可用!!
网上摘要比较
htop 和经典之间的比较 top
1、htop您可以垂直和水平滚动列表以查看所有进程和完整的命令行。
2、top每按一次未分配的键都会有一个延迟(特别是当意外触发多键转义序列时很烦人)。
3、htop启动速度更快(top似乎在显示任何内容之前会收集一段时间)。
4、htop无需键入进程号即可终止进程。
5、htop无需键入进程号或优先级值即可取消某个进程。
6、在htop你可以一次杀死多个进程。
6、top 较旧,因此需要更多测试
我使用发现使用htop时,ctrl+c掉之后,终端不能保存记录,这个很蛋疼,只能重定向到文本查看记录,文本查看还大概率乱码,cat 查看iTerm 开始出BUG。
`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J@`J
(base) ➜ tmp `?;`?;`?;`?;`?;`?;`?;`?;`?;`?;`?;`?;`?;`?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;a?;aK6aK6aK6aK6aK6aK6aK6aK6aK6aK6 S7#S7
(base) ➜ tmp
(base) ➜ tmp /*#$&a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2(base) ➜ tmp /*#$&a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a(base) ➜ tmp /*#$&a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2+a2
只能重启终端恢复。目前看实时查看可以用htop,脚本测试及记录数据继续用top。