linux - 如何让top在后台运行?它需要运行并记录输出。不死或僵尸了

标签 linux bash shell qnx qnx-neutrino

我正在尝试制作一个脚本来将顶部输出记录到我的嵌入式系统后台的一个文件中。但是,一旦我将其置于后台,它就会退出或僵尸化。在后台运行东西的系统问题是什么? 我的剧本

TOP_LOG_FILE=top_log.txt
if [ -e $TOP_LOG_FILE ] ; then
        rm $TOP_LOG_FILE
fi
while true
do
        echo "##"`date`"##" >> $TOP_LOG_FILE
        nohup top -n 1 >> $TOP_LOG_FILE 
        sleep 1
        echo "##xxxxxxxxxxx##" >> $TOP_LOG_FILE
done

我正在尝试执行它

# nohup sh top_log.sh &


[4] 3051559

appending output to nohup.out

# 


[4] + Stopped (tty output) nohup sh top_log.sh

作为

[5] 3121193

sh: top_log.sh: cannot execute - No such file or directory

[6] 3121194

# 


[6]   Done                 > /dev/null 

[5]   Done (126)           top_log.sh 

# 

我该如何真正避免这种行为?

最佳答案

top -n 1 -b

在循环中尾部并附加到文件。
将循环包装在脚本中并使用 & 从终端启动它。

关于linux - 如何让top在后台运行?它需要运行并记录输出。不死或僵尸了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45019382/

相关文章:

linux - 有没有办法将一个系统上运行的应用程序转移到另一个系统上?

bash - "trap"的行为不符合预期 - 在 "trap"奇怪的终端输入之后并且没有回显

linux - 根据换行符将命令输出行存储到数组中

javascript - 将 BASH 的日期格式转换为 JavaScript 的日期格式

bash - 获取所有文件夹中所有文件的内容

java - 使用 Java 读取 PATH 变量(在 Mac OS X 上的 Eclipse 中)与 shell 不同

linux - 如何从特定文件夹中获取 PID

linux - 如何创建 tar 文件以便将文件放置在 tar.gz 文件的根文件夹中

c++ - 在自定义 C/C++ 程序中获取 PPP0 接口(interface) Tx/Rx 字节的最简单方法是什么?

linux - 任何用于编程的轻量级 *nix 环境