Ubuntu技巧:linux后台运行程序方法

1. 执行命令后加 & 符号,缺点客户端关了,也会停止执行

    后台执行:./a.out  &

    显示到前台用命令:fg

2. nohup 命令 &  ,  客户端关了,后台还会在执行 

     后台执行:nohup ./a.out  &

可以将这些启动后台运行命令写进启动脚本,使应用程序上电自启动。

在I-MX287a开发板上想上电自启QT应用程序时,遇到了问题,现象是设备重启上电后,qt应用程序启动了,但是界面卡死,无法动作,但是在用网络或串口终端连接arm板后,手动启动qt程序,又能正常启动运行,后来解决方法是在启动脚本下加一条加载环境变量语句,启动bash如下,按系统启动顺序,脚本文件在/etc/init.d/路径下创建了脚本名为S99mytest:

#file name:S99mytest
#!/bin/sh

#重新挂载根文件系统
mount -o remount rw /

#挂载nfs与Ubuntu连接
mount -t nfs -o nolock 192.168.0.103:/home/nfs/share /mnt

#加载驱动
insmod /usr/my_driver/led.ko
insmod /usr/my_driver/gpio_driver.ko
insmod /usr/my_driver/flow_led_gpio.ko

#get net date
ntpclient -s -d -c 1 -i 5 -h 202.108.6.95

#start qt application
source /etc/profile
/usr/test/epc28x/qtProject/qtctrlled_mqtt/qtctrlled -qws &

其中"source /etc/profile"即为重新更新环境变量,可能是这个环境变量文件中的某个环境变量在调试终端连接后自动被加载,所以在调试终端手动启动QT应用程序能正常运行,目前可以这么使用,启动速度虽然不快,但是目前可以实现上电自启QT界面程序。

猜你喜欢

转载自blog.csdn.net/qq_28643619/article/details/88369277