如何在脚本中停止正在运行的进程

如何在脚本中停止正在运行的进程

这里是新手。

我有一部运行 busybox 的 IP 电话

我从名为 avconv 的开发人员那里获得了一个脚本,它可以捕获手机屏幕上发生的情况并运行它,我使用以下命令

/data/avconv -f fbdev -r 25 -i /dev/fb0 /tmp/output.avi

当我完成后,我点击Ctrl+C来停止脚本。

现在我想创建一个脚本来运行此命令,然后将输出视频复制到我的 tftp 服务器。所以我写了下面的代码,用日期命名 FileName,然后运行命令,然后目的是等待 5 秒,找到 pid(将其截断以保留进程 ID),杀死它,然后将 FileName 发送到我的 tftp ..然后删除该文件..

FN=WE34_$(date +%Y%m%d-%H%M%S).avi
/data/avconv -f fbdev -r 25 -i /dev/fb0 /tmp/$FN
sleep 5
pid=`ps | grep avconv`
pidchopped=`echo $pid | cut -d' ' -f 1`
kill -5 $pidchopped
tftp -pl /tmp/$FN -r $FN 192.168.1.50
rm -f /tmp/$FN

问题是脚本第二行中的命令不会停止执行我的脚本的其余部分..您能帮助我吗..任何提示/提示/输入将不胜感激..提前谢谢您! !

答案1

看起来您只需要avconv在后台运行,而不是等待它,这样脚本的其余部分就可以继续。这就是您要找的吗?

为此,请尝试添加&到该行的末尾,如下所示:

/data/avconv -f fbdev -r 25 -i /dev/fb0 /tmp/$FN &

相关内容