Shelljs 初探

2,292 阅读1分钟

1,在linux上使用这个可以有两种方法

  1. 使用shjs 运行.js 文件
前提是建立软连接ln -s   就跟npm 和node 建立软连接一样 同时文件内部可以使用简写

shjs demo.js

// demo.js
echo('demo123');
cd('/home/gitlab-runner');
  1. 使用node 运行 .js 文件
文件内部引入shelljs

// example 
const shell = require('/home/gitlab-runner/.nvm/versions/node/v8.11.4/lib/node_modules/shelljs');  //这里引入必须是根路径

const allParams = process.argv;   //  这个是获取外部传入的变量值
allParams.splice(0, 2);
console.log(allParams);
console.log('---------------enter fro yunduan---------');
shell.cd('/home/gitlab-runner');

  1. shelljs 不能执行shell的source命令 需要用.代替

参考

报错:/bin/sh: 1: source: not found

// 原命令
shell.exec('source /home/gitlab-runner/.nvm/nvm.sh');

// 正确命令   使用相对路径调用或者绝对路径;
shell.exec('./.nvm/nvm.sh');  // 相对路径
shell.exec('. /home/gitlab-runner/.nvm/nvm.sh'); // 绝对路径