htop
我刚刚用这个方法创建了一个脚本,每 n 分钟自动输出一次→https://askubuntu.com/a/726661/253251,我将脚本放在 crontab 上,以便每天执行。但是 cron 生成的输出不完整。
但是,如果我手动执行该命令,则不会出现截断的文本。
我可以调整哪些设置来实现 cron 的完整输出?
更新
我已经尝试了 Waltinator 的建议,但它不起作用,而且它将输出拉得太长,这不是我想要的。
如何使输出类似于手动执行的输出?
答案1
在我看来,你只需要为 选取“正确”的值COLUMNS
。在某种程度上,你的手动方法也做到了这一点,因为你在运行 之前将窗口扩大到某个合适的值htop
。
我不认为有一种“神奇的方法”可以做到这一点,除非你运行ps
或一些类似的命令,找出正在运行的最长命令的长度,然后将其设置为值COLUMNS
(加上出现在它左边的所有内容的更多列),然后运行htop
。
我想这可以通过以下代码实现:
ps -aef | awk -v OFS='\t' '{ $1=$1; print }' | cut -f 8 | awk 'length > max_length { max_length = length; longest_line = $0 } END { print longest_line }' | wc -c
左边的部分长度不变,所以你可以把它添加为常量。然后让你的脚本COLUMNS
使用该值进行设置。我不确定这是否可行...祝你好运!