5
我正在製作遊戲服務器,並且我想在從SSH運行服務器後鍵入命令。 例如:addbot,generatemap,kickplayer等。如何在Node.js中運行服務器時執行控制檯命令
像在半條命或任何其他遊戲服務器。我怎樣才能讓Node.js監聽我的命令,並讓服務器在SSH中運行?
我正在製作遊戲服務器,並且我想在從SSH運行服務器後鍵入命令。 例如:addbot,generatemap,kickplayer等。如何在Node.js中運行服務器時執行控制檯命令
像在半條命或任何其他遊戲服務器。我怎樣才能讓Node.js監聽我的命令,並讓服務器在SSH中運行?
您可以使用process.stdin這樣的:
process.stdin.resume();
process.stdin.setEncoding('utf8');
process.stdin.on('data', function (text) {
console.log(text);
if (text.trim() === 'quit') {
done();
}
});
function done() {
console.log('Now that process.stdin is paused, there is nothing more to do.');
process.exit();
}
否則,你可以使用助手庫,例如提示https://github.com/flatiron/prompt它可以讓你做到這一點:
var prompt = require('prompt');
// Start the prompt
prompt.start();
// Get two properties from the user: username and email
prompt.get(['username', 'email'], function (err, result) {
// Log the results.
console.log('Command-line input received:');
console.log(' username: ' + result.username);
console.log(' email: ' + result.email);
})
工作的偉大,謝謝! – Nick
「quit」命令不起作用:P好像「text」變量有這個文本+「enter」;)如何刪除這個輸入? – Piotrek
@ Ludwik11使用.trim() – Masterakos