uptime命令:
- * 使用uptime命令擷取主機已耗用時間和查詢linux系統負載資訊。資訊顯示依次為:現在時間、系統已已耗用時間、目前有多少登陸使用者、系統在過去的1分鐘、5分鐘和15分鐘內的平均負載。*
ubuntu@ubuntu:~$ uptime
17:42:05 up 3 days, 7:58, 6 users, load average: 0.11, 0.10, 0.11
17:42:05 //系統目前時間
up 3 days, 7:58 //主機已已耗用時間,時間越大,說明主機越穩定
6 user //使用者串連數,是總串連數而不是使用者數
load average* // 系統平均負載,統計最近1,5,15分鐘的系統平均負載, 系統平均負載是指在特定時間間隔內運行隊列中的平均進程數。
解決方案思路:
在測試的之前記錄一下sys_pid_before,reboot_before,在測試之後記錄一下sys_pid_after,reboot_after
如果 [$((reboot_after-reboot_before)) -gt 10 ] || [$sys_pid_before -ne $sys_pid_after ]成立,則視為Android軟開機
如果[$((reboot_after-reboot_before)) -gt 10 ]成立,則視為Android硬重啟
`sys_pid_after=adb shell ps system_server|awk ‘NR==2{print $2}’
date=`adb shell date +%s|grep -o “^[0-9].*[0-9]”`
uptime=`adb shell cat /proc/uptime|awk -F. ‘{print $1}’`
reboot_after=`expr date−uptime`
sys_pid_before=$sys_pid_after
reboot_before=$reboot_after
if [$((reboot_after-reboot_before)) -gt 10 ] || [$sys_pid_before -ne $sys_pid_after ]; then
echo ==========system_server reboot==========
if [$((reboot_after-reboot_before)) -gt 10 ];then
echo ==========Kernel Panics==========
fi
fi`