linux – 在NPM / Yeoman中将spa命令作为sudo

我正在学习Yeoman并且已经走得很远很好:)但是我现在正处于我的生成器中,我想为我的新项目设置一个VHOST.

我通常创建VHOST的方法是在/ etc / apache2 / sites-available /中创建一个* .conf文件,运行sudo a2ensite new-site,最后运行sudo service apache2 reload.

如何使用generator.spawnCommand()(或其他任何有效的东西)来运行我的sudo命令?我假设用户需要输入他的密码才能运行命令.

请注意,我已经尝试过sudo npm包,但即使使用https://www.npmjs.com/package/sudo提供的示例代码,它也会无声地失败

解决方法:

也许我误解了一些东西,但以下简单的代码对我来说很好:

var generators = require('yeoman-generator');
var execSync = require('child_process').execSync;

module.exports = generators.Base.extend({
  touch: function () {
    execSync('sudo touch /tmp/test-sudo', {
      stdio: 'inherit'
    });
  }
});
上一篇:javascript – 错误:EACCES,命令#yo angular中的权限被拒绝


下一篇:1-使用 React 生成 Excel 加载项