Dil*_*rix 24 formatting ascii htop human-readable
我已尝试使用管道htop传输到文本文件(例如htop > text.txt),但它通过格式化字符串给出了文本乱码(见下文).有没有办法获得更好,人类可读的输出?
^[7^[[?47h^[[1;30r^[[m^[[4l^[[?1h^[=^[[m^[[?1000h^[[m^[[m^[[H^[[2J^[[1B ^[[36m1 ^[[m^[[1m[^[[m^[[32m||||||||||^[[31m||||||||||^[[30m^[[1m \
22.2%^[[m]^[[m ^[[36mTasks: ^[[1m159^[[m^[[36m total, ^[[32m^[[1m5^[[m^[[36m running^[[3;3H2 ^[[m^[[1m[^[[30m \
0.0%^[[m]^[[m ^[[36mLoad average: ^[[30m^[[1m1.11 ^[[m^[[m1.28 ^[[1m1.31 ^[[4;3H^[[m^[[36m3 ^[[m^[[1m[^[[m^[[32m||||||||||^[[30m^[[1m \
11.1%^[[m]^[[m ^[[36mUptime: ^[[1m9 days, 22:04:51^[[5;3H^[[m^[[36m4 ^[[m^[[1m[^[[30m 0.0\
%^[[m]^[[6;3H^[[m^[[36m5 ^[[m^[[1m[^[[m^[[31m||||||||||^[[30m^[[1m 11.1%^[[m]^[[7;3H^[[m^[[36m6 ^[[m^[[1m[^[[30m \
Run Code Online (Sandbox Code Playgroud)
His*_*H M 53
htop作者在这里.
不,没有"好的"方法可以将htop的输出传输到文件中.它是一个交互式应用程序,并使用终端重绘例程来生成它的界面(因此,它使得它具有多大的意义,例如,将vim传递到文本文件中 - 您将获得类似的结果).
要以文本格式获取有关进程的信息,请使用"ps".例如,ps auxf > file.txt为您提供了大量易于解析的信息(或者ps aux如果您不希望树格式化 - 请参阅man ps更多选项).
Mar*_*agh 19
htop输出ANSI转义码以使用颜色并在终端周围移动光标.有一个很好的命令行程序aha可用于将ANSI转换为HTML.
Ubuntu/Debian安装
apt-get install aha
Run Code Online (Sandbox Code Playgroud)
将htop输出保存为HTML文件
echo q | htop | aha --black --line-fix > htop.html
Run Code Online (Sandbox Code Playgroud)
Szy*_*Jeż 11
我有同样的需求,最终使用top而不是htopa通过-b标志提供批处理模式.
-b:批处理模式操作在"批处理模式"中启动,这对于将输出从顶部发送到其他程序或文件非常有用.在此模式下,top将不接受输入并运行,直到迭代限制您使用'-n'命令行选项设置或直到被杀死.
例如:
top -b -n 1
Run Code Online (Sandbox Code Playgroud)
希望这有助于即使这不使用htop.
小智 7
此命令输出纯文本。(它需要安装aha和html2text。)
echo q | htop -C | aha --line-fix | html2text -width 999 |
grep -v "F1Help\|xml version=" > file.txt
Run Code Online (Sandbox Code Playgroud)