Unix 杀死fbi帧缓冲进程,x时间后

Unix 杀死fbi帧缓冲进程,x时间后,unix,timer,sh,wait,framebuffer,Unix,Timer,Sh,Wait,Framebuffer,我对sh脚本有问题 我使用的是覆盆子,我想在我的脚本中用fbi帧缓冲区显示10秒的图像。在这10秒钟之后,我希望我的脚本运行其他顺序命令 我写道: [...] if[...] fbi --noverbose $MEDIAFILE MYPID=pgrep fbi echo "[$MYPID] this is MY PID - and now i kill it!!!" [...] 但是我的脚本在第一行(fbi--noverbose…)就停止了,我无法在下一行杀死它:( 我无法在后台执行命令,因为

我对sh脚本有问题

我使用的是覆盆子,我想在我的脚本中用fbi帧缓冲区显示10秒的图像。在这10秒钟之后,我希望我的脚本运行其他顺序命令

我写道:

[...]
if[...]
fbi --noverbose $MEDIAFILE
MYPID=pgrep fbi
echo "[$MYPID] this is MY PID - and now i kill it!!!"
[...]
但是我的脚本在第一行(
fbi--noverbose…
)就停止了,我无法在下一行杀死它:(

我无法在后台执行命令,因为我需要查看图像


有什么想法吗?谢谢!

如果fbi不能在后台运行,请将kill命令放在后台。要在延迟后执行,请使用先休眠的子shell,然后运行kill命令。脚本如下所示:

( sleep 10 ; kill $(pgrep fbi) ) &
fbi somefile

如果fbi无法在后台运行,请将kill命令放在后台。要在延迟后执行,请使用先休眠的子shell,然后运行kill命令。脚本如下所示:

( sleep 10 ; kill $(pgrep fbi) ) &
fbi somefile

如果您的目标是在一定的秒数后不再显示,您还可以添加命令行选项“-t secs”和“-1”。“-t secs”用于幻灯片放映,是显示下一个图像的时间,-1”表示幻灯片放映不会循环。 就你而言:

fbi --noverbose -t 10 -1 $MEDIAFILE

这将显示图像10秒钟,然后fbi命令完成。无需终止该过程。

如果您的目标是在一定的秒数后不再显示,您还可以添加命令行选项“-t secs”和“-1”。“-t secs”用于幻灯片放映,并且是显示下一张图像和“-1”的时间这意味着幻灯片不会循环播放。 就你而言:

fbi --noverbose -t 10 -1 $MEDIAFILE

这张图片显示了10秒钟,然后fbi命令结束。无需终止此过程。

Greattt!!我是个傻瓜!!!我为此损失了一天…我会尝试,但我确信这是解决方案!谢谢!:dGreattt!!我是个傻瓜!!!我损失了一天…我会尝试,但我确信这是解决方案!谢谢!:D