首页 > 解决方案 > 覆盆子通过 /etc/profile 和桌面自动启动执行节点 js 脚本

问题描述

我有这个nodejs脚本,基本上这个工作是产生一个python进程和一个appimage

const cp = require('child_process');
const path = require('path');

let app;

app = function(){
    let python = cp.spawn('python3', ['qrcode.py']);

    python.stdout.on('data', function (data) {
        
    });

    python.stderr.on(data,function(data){

    });

    python.on('close', (code) => {
        // respawn after 5 seconds
        setTimeout(function(){
            app();
        },5000);
    });
}

app();

// execute the appimage
cp.execFile(path.join(__dirname, 'dist/attrfidqrcode-1.0.0-armv7l.AppImage'), function(err, data) {

});

并尝试通过/etc/profile添加到底部来自动启动

node /home/pi/.dev/attendance-rfid-qrcode/app.js

并重新启动但根本不工作,我可以通过验证它ps -e并且没有像python或我期望出现的appimage这样的进程

也试过桌面自动启动

mkdir -p ~/.config/lxsession/LXDE-pi && touch ~/.config/lxsession/LXDE-pi/autostart

并添加符号链接ln -s .config/lxsession/LXDE-pi/autostart ~/autostart

然后nano autostart插入

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
@xset s off
@xset dpms 0 0 0
@/home/pi/autostart.sh

然后创建 autostart.shnano autostart.sh并使其可执行

chmod +x ~/autostart.sh

和 autostart.sh 内容

#!/bin/bash
node /home/pi/.dev/attendance-rfid-qrcode/app.js

但不幸的是,根本不工作

非常感谢任何想法、帮助和建议。提前致谢

标签: node.jslinuxraspberry-piraspberry-pi3autostart

解决方案


试着放

@node /home/pi/.dev/attendance-rfid-qrcode/app.js

在......的最后

/etc/xdg/lxsession/LXDE-pi

这就是我在我的信息亭中启动铬的方式。如果不起作用,请尝试在命令末尾添加类似>> log_file 2>&1记录的内容stderrstdoout并尝试弄清楚发生了什么。


推荐阅读