Tôi đang cố gắng tìm ra một quy trình giám sát các phiên của người dùng trên một máy chủ từ xa và thông báo cho họ khi họ không sử dụng quá lâu, với lệnh Linux w
là phù hợp.
Vấn đề là - w
sử dụng 3 định dạng khác nhau để chỉ định thời gian nhàn rỗi của phiên và tôi không thể tìm ra chúng đúng cách. Một đầu ra w
có thể trông như thế này:
11:40:57 up 400 days, 10:46, 13 users, load average: 5.07, 5.10, 4.83
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
john pts/1 XX.XX.XX.XX Wed13 22:29m 0.13s 0.04s ssh master-db
june pts/2 XX.XX.XX.XX Wed13 46.00s 0.67s 0.13s -bash
jenn pts/4 XX.XX.XX.XX 11:13 27:47 4.16s 0.11s -bash
Như bạn có thể thấy, IDLE có các định dạng khác nhau cho mỗi người dùng:
- "AA.BBs" rõ ràng có nghĩa là giây AA và BB 1/100 giây (46 giây trong trường hợp tháng 6) đã trôi qua kể từ khi cô hoạt động lần cuối trên bảng điều khiển.
- "AA: BBm" có lẽ có nghĩa là giờ AA và phút BB đã trôi qua kể từ khi John hoạt động lần cuối trong phiên của mình.
- "AA: BB" là định dạng tôi không thể tìm ra - Jennifer đã không hoạt động trong bao lâu?