cron 产生的输出被截断

cron 产生的输出被截断

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

本文归功于以下两个页面: 12,我刚刚从中复制过来。

左边的部分长度不变,所以你可以把它添加为常量。然后让你的脚本COLUMNS使用该值进行设置。我不确定这是否可行...祝你好运!

相关内容