ゲームサーバーを作成しています。SSHからサーバーを実行した後にコマンドを入力したいと思います。例:addbot、generatemap、kickplayerなど。
Half-lifeや他のゲームサーバーのように。Node.jsにコマンドをリッスンさせながら、サーバーをSSHで実行し続けるにはどうすればよいですか?
ゲームサーバーを作成しています。SSHからサーバーを実行した後にコマンドを入力したいと思います。例:addbot、generatemap、kickplayerなど。
Half-lifeや他のゲームサーバーのように。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);
})