Làm thế nào để lưu đầu ra htop vào tập tin?


14

Làm thế nào tôi có thể lưu đầu ra của htopmột tập tin? Với top, tôi có thể chạy

top -b -n1 > top.txt

trong đó -bchỉ định chế độ hàng loạt và -nchỉ định số lần lặp.

Nhưng mantrang htopkhông cung cấp khả năng như vậy.

Là chụp ảnh màn hình là cách duy nhất?

Câu trả lời:


18

Ron cung cấp một liên kết đến đầu ra htop đến tập tin có thể đọc được của con người và một trích dẫn từ câu trả lời được bình chọn hàng đầu của nhà phát triển htop.

Tuy nhiên, xa hơn một chút trên cùng một trang, có một giải pháp sử dụng chuyển đổi ANSI sang HTML. Tóm lại, cài đặt ahatừ trung tâm phần mềm và sau đó chạy:

echo q | htop | aha --black --line-fix > htop.html

Đây là những dòng đầu tiên trông như thế nào:

  1  [|||||||||||||||||||||||||||||||||                                    42.9%]     Tasks: 73, 251 thr; 1 running
  2  [||||||                                                                7.1%]     Load average: 0.28 0.32 0.32 
  Mem[||||||||||||||||||||||||||||||||||                              581/3916MB]     Uptime: 03:09:25
  Swp[                                                                  0/4056MB]
  PID USER      PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command          
 9785 dkb        20   0 31544  2464  1312 R 22.2  0.1  0:00.09 htop             
 3503 dkb        20   0 1065M 59684 16344 S  7.4  1.5  6:25.43 mpv --profile=pseudo-gui -- file:///home/dkb/Downloads/ONX
    1 root       20   0 33760  3088  1488 S  0.0  0.1  0:01.62 /sbin/init        
  276 root       20   0 19472   652   460 S  0.0  0.0  0:00.19 upstart-udev-bridge --daemon
  281 root       20   0 52592  2640  1016 S  0.0  0.1  0:00.76 /lib/systemd/systemd-udevd --daemon
  577 root       20   0 15256   632   388 S  0.0  0.0  0:00.05 upstart-socket-bridge --daemon
  662 root       20   0 15272   416   200 S  0.0  0.0  0:00.04 upstart-file-bridge --daemon
  677 syslog     20   0  249M  1304   836 S  0.0  0.0  0:00.01 rsyslogd          
  678 syslog     20   0  249M  1304   836 S  0.0  0.0  0:00.00 rsyslogd          
  679 syslog     20   0  249M  1304   836 S  0.0  0.0  0:00.02 rsyslogd          
  675 syslog     20   0  249M  1304   836 S  0.0  0.0  0:00.04 rsyslogd          
  680 messagebu  20   0 39860  1968  1044 S  0.0  0.0  0:00.52 dbus-daemon --system --fork

3
Đối với những người thắc mắc: đường ống qđể htopthoát nó ngay lập tức.
BallpointBen

6

Ngay từ tác giả của htop:

Không, không có cách "đẹp" nào để đưa đầu ra của htop được đưa vào một tệp. Đây là một ứng dụng tương tác và sử dụng các thói quen vẽ lại thiết bị đầu cuối để tạo giao diện của nó (do đó, đường ống có ý nghĩa như, ví dụ, đường ống vim vào một tệp văn bản - bạn sẽ nhận được kết quả tương tự).

Để có được thông tin về các quy trình của bạn ở định dạng văn bản, hãy sử dụng ps. Ví dụ: ps auxf > file.txtcung cấp cho bạn nhiều thông tin dễ phân tích (hoặc ps phụ nếu bạn không muốn định dạng cây - xem man ps để biết thêm tùy chọn).


5

Hãy thử lệnh này; nó làm những gì bạn muốn Bạn chỉ cần cài đặt ahahtml2textđầu tiên.

echo q | htop -C | aha --line-fix | html2text -width 999 | grep -v "F1Help" | grep -v "xml version=" > file.txt

1

1. lưu đầu ra thiết bị đầu cuối vào tập tin

echo | htop  > /tmp/htop.out

//htop.out có terminal save/load console_sequence

2. hiển thị đầu ra trong thiết bị đầu cuối

head -c -10 /tmp/htop.out  | tail -c +10

// chỉ cần sử dụng dải đầu & đuôi, screen reset console_sequence
// 10byte là khoảng


0

Tôi thường làm như sau:

top
control-c

và sau đó cuộn lên để tôi có thể sao chép / dán:

rinzwind@schijfwereld:~$ top
top - 18:58:05 up 13 min,  2 users,  load average: 0,18, 0,35, 0,24
Tasks: 252 total,   1 running, 251 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3,4 us,  0,7 sy,  0,5 ni, 95,3 id,  0,1 wa,  0,0 hi,  0,0 si,  0,0 st
KiB Mem:  12190608 total,  2007692 used, 10182916 free,    50292 buffers
KiB Swap: 24414204 total,        0 used, 24414204 free.   739236 cached Mem

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
 1093 rinzwind  20   0  364616   8824   7252 S   6,2  0,1   0:00.94 ibus-daemon 
 2525 rinzwind  20   0   29192   3048   2540 R   6,2  0,0   0:00.02 top         
    1 root      20   0  185008   5564   3840 S   0,0  0,0   0:00.77 systemd     
    2 root      20   0       0      0      0 S   0,0  0,0   0:00.00 kthreadd    
    3 root      20   0       0      0      0 S   0,0  0,0   0:00.00 ksoftirqd/0 
    5 root       0 -20       0      0      0 S   0,0  0,0   0:00.00 kworker/0:+ 
    7 root      20   0       0      0      0 S   0,0  0,0   0:00.32 rcu_sched   
    8 root      20   0       0      0      0 S   0,0  0,0   0:00.00 rcu_bh      
    9 root      20   0       0      0      0 S   0,0  0,0   0:00.09 rcuos/0     
   10 root      20   0       0      0      0 S   0,0  0,0   0:00.00 rcuob/0     
   11 root      rt   0       0      0      0 S   0,0  0,0   0:00.00 migration/0 
   12 root      rt   0       0      0      0 S   0,0  0,0   0:00.00 watchdog/0  
   13 root      rt   0       0      0      0 S   0,0  0,0   0:00.00 watchdog/1  
   14 root      rt   0       0      0      0 S   0,0  0,0   0:00.00 migration/1 
   15 root      20   0       0      0      0 S   0,0  0,0   0:00.00 ksoftirqd/1 
   16 root      20   0       0      0      0 S   0,0  0,0   0:00.04 kworker/1:0 
   17 root       0 -20       0      0      0 S   0,0  0,0   0:00.00 kworker/1:+ 
rinzwind@schijfwereld:~$ 
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.