系统环境:centos7,青龙面板版本:2.15.4。

这里的环境变量指面板左侧菜单“配置文件”config.sh中的export变量, 例如export MY_TOKEN='123';,下面也以MY_TOKEN作为示例,这种也是环境变量,只不过不会显示在面板左侧菜单的“环境变量”中,但并不影响脚本使用。

js脚本读取环境变量:

最简单的方式:process.env.MY_TOKEN

console.log(process.env.MY_TOKEN)

js脚本修改环境变量:

const fs = require('fs');

const path = require('path');

//修改环境变量的方法,参数1:环境变量名;参数2:环境变量的新值

function setEnvVar(envName, newValue) {

const configPath = path.join(__dirname, '../config/config.sh');

const configContent = fs.readFileSync(configPath, 'utf-8');

const pattern = new RegExp(`^export ${envName}='(.*)';`, 'm');

const match = configContent.match(pattern);

if (match) {

const oldValue = match[1]; //另一种读取环境变量的方式

const newContent = configContent.replace(pattern, `export ${envName}='${newValue}';`);

fs.writeFileSync(configPath, newContent);

console.log(`${envName}的值已从${oldValue}修改为${newValue}`);

} else {

console.error(`找不到${envName}变量`);

}

}

//调用方法

setEnvVar('MY_TOKEN', 'new_token_value');

关于直接修改面板左侧菜单的“环境变量”中设置的环境变量,我目前还不知道有没有这种方式。

好文链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。