Как сохранить вывод htop в файл?
Как я могу сохранить вывод htop
в файл? С top
, Я могу бежать
top -b -n1 > top.txt
где -b
указывает пакетный режим и -n
указывает количество итераций.
Но man
страница из htop
не предлагает такую возможность.
Снимок экрана - единственный способ?
4 ответа
Ron предоставил ссылку на вывод htop на читабельный человеком файл и цитату из наиболее популярного ответа от разработчика htop.
Однако чуть дальше на той же странице есть решение, которое использует преобразование ANSI в HTML. Вкратце, установить aha
из центра программного обеспечения, а затем запустите:
echo q | htop | aha --black --line-fix > htop.html
Вот как выглядят первые несколько строк:
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
Прямо от автора htop
:
Нет, "хорошего" способа получить вывод htop по трубопроводу в файл. Это интерактивное приложение, использующее процедуры перерисовки терминала для создания своего интерфейса (поэтому его использование имеет такой же смысл, как, например, передача vim в текстовый файл - вы получите аналогичные результаты).
Чтобы получить информацию о ваших процессах в текстовом формате, используйте
ps
, Например,ps auxf > file.txt
дает вам много легко разбираемой информации (или ps aux, если вы не хотите форматировать дерево - смотрите man ps для дополнительных опций).
Попробуйте эту команду; он делает то, что вы хотите. Вам просто нужно установить aha
а также html2text
первый.
echo q | htop -C | aha --line-fix | html2text -width 999 | grep -v "F1Help" | grep -v "xml version=" > file.txt
1. сохранить вывод терминала в файл
echo | htop > /tmp/htop.out
//htop.out имеет терминал сохранения / загрузки console_sequence
2. показать вывод в терминале
head -c -10 /tmp/htop.out | tail -c +10
// просто используем голову и хвост, убираем экран
// 10
байт было примерно
Я обычно делаю следующее:
top
control-c
а затем прокрутите вверх, чтобы я мог скопировать / вставить:
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:~$