From 65fad89794ed128ad2f06467eb54d22e9f5e0be7 Mon Sep 17 00:00:00 2001 From: ximenpo Date: Wed, 20 May 2015 15:14:28 +0800 Subject: [PATCH] =?UTF-8?q?console=E6=9C=8D=E5=8A=A1=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=90=AF=E5=8A=A8snax=E6=9C=8D=E5=8A=A1=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 输入: svc -> 用snlua启动svc服务 snax svc -> 用snax启动svc服务 --- service/console.lua | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/service/console.lua b/service/console.lua index c0eba879..90fe62b0 100644 --- a/service/console.lua +++ b/service/console.lua @@ -1,13 +1,26 @@ local skynet = require "skynet" +local snax = require "snax" local socket = require "socket" +local function split_cmdline(cmdline) + local split = {} + for i in string.gmatch(cmdline, "%S+") do + table.insert(split,i) + end + return split +end + local function console_main_loop() local stdin = socket.stdin() socket.lock(stdin) while true do local cmdline = socket.readline(stdin, "\n") - if cmdline ~= "" then - pcall(skynet.newservice,cmdline) + local split = split_cmdline(cmdline) + local command = split[1] + if command == "snax" then + pcall(snax.newservice, select(2, table.unpack(split))) + elseif cmdline ~= "" then + pcall(skynet.newservice, cmdline) end end socket.unlock(stdin)