今天在設備中指令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。