Có cách nào để sắp xếp đầu ra ps theo thời gian bắt đầu quá trình, vì vậy mới nhất là ở trên cùng hoặc dưới cùng?
Trên Linux?
Trên SysV5?
Trên máy Mac?
Có cách nào để sắp xếp đầu ra ps theo thời gian bắt đầu quá trình, vì vậy mới nhất là ở trên cùng hoặc dưới cùng?
Trên Linux?
Trên SysV5?
Trên máy Mac?
Câu trả lời:
Điều này sẽ hoạt động trên Linux và SysV5
ps -ef --sort=start_time
tac
.
watch "ps -ef --sort=start_time | grep -v kworker | tail"
Linux:
$ ps aux --sort=lstart
OSX:
$ ps aux -O started
lstart
đưa ra dấu thời gian đầy đủ, nhưng không thể được sử dụng làm khóa sắp xếp. start_time
đưa ra cột 'thời gian thông thường trong vòng 24 giờ qua, ngày khác' và có thể được sử dụng làm khóa sắp xếp. Cả hai đều cho 'BẮT ĐẦU' trong tiêu đề.
15/12 15:40
xuất hiện trước 16/12 15:39
, giống như 13:39
xuất hiện trước 15:38
.
Cùng với các câu trả lời tuyệt vời ở trên, đôi khi tôi chỉ muốn thấy 20 người phạm tội hàng đầu theo quy trình được sắp xếp giảm dần theo thời gian,% cpu và sử dụng bộ nhớ.
Cho rằng tôi sử dụng:
ps auxww --sort=lstart | sort -r -k3,4 | head -20
Điều này sẽ có trên nền tảng CentOS, mặc dù tôi cũng rất thích kết quả tương tự trên Fedora.
Ồ và đối với các nụ cười, đôi khi tôi muốn xóa một tập hợp các quy trình, vì vậy tôi chỉ cần sử dụng một biến thể ở trên bao gồm một chút hành động grep -v, chẳng hạn như:
ps auxww --sort=lstart | sort -r -k3,4 | grep -v "sbin/httpd" | head -20
--sort
của ps
không làm việc cho tôi. Dựa vào vỏ sort
. +1