¿Cómo guardar la salida de htop en el archivo?

14

¿Cómo puedo guardar la salida de htopun archivo? Con top, puedo correr

top -b -n1 > top.txt

donde -bespecifica el modo por lotes y -nespecifica el número de iteraciones.

Pero la manpágina de htopno ofrece esa posibilidad.

¿Tomar una captura de pantalla es la única manera?

DK Bose
fuente

Respuestas:

18

Ron proporcionó un enlace a la salida de htop a un archivo legible para humanos y una cita de la respuesta más votada por el desarrollador de htop.

Sin embargo, un poco más abajo en la misma página, hay una solución que utiliza la conversión de ANSI a HTML. Brevemente, instale ahadesde el centro de software y luego ejecute:

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

Así es como se ven las primeras líneas:

  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
DK Bose
fuente
3
Para aquellos que se preguntan: tuberías qpara htopsalir de inmediato.
BallpointBen
6

Derecho del autor de htop:

No, no hay una forma "agradable" de obtener la salida de htop en un archivo. Es una aplicación interactiva y utiliza rutinas de redibujo de terminal para producir su interfaz (por lo tanto, la canalización tiene tanto sentido como, por ejemplo, canalizar vim en un archivo de texto; obtendrá resultados similares).

Para obtener la información sobre sus procesos en formato de texto, use ps. Por ejemplo, ps auxf > file.txtle brinda mucha información fácil de analizar (o ps aux si no desea formatear el árbol; consulte man ps para obtener más opciones).

Ron
fuente
5

Prueba este comando; hace lo que quieres Solo necesita instalar ahay html2textprimero.

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

1. guardar la salida del terminal en el archivo

echo | htop  > /tmp/htop.out

//htop.out tiene terminal save/load console_sequence

2. mostrar salida en terminal

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

// simplemente use head & tail strip screen reset console_sequence
// los 10bytes eran aproximadamente

yurenchen
fuente
0

Normalmente hago lo siguiente:

top
control-c

y luego desplazarme hacia arriba para poder copiar / pegar:

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:~$ 
Rinzwind
fuente