我正在学习Yeoman,并已经得到了很远,这是很好的:),但我现在在我的发电机,我想为我的新项目build立一个VHOST点。
我通常创build一个VHOST的方法是在/etc/apache2/sites-available/创build一个* .conf文件,运行sudo a2ensite new-site ,最后sudo service apache2 reload 。
我怎样才能使用generator.spawnCommand() (或其他工作)运行我的sudo命令? 我假设用户需要input他的密码才能运行命令。
请注意,我已经尝试了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' }); } });