Linux 无法使用exit或quit退出Asterisk CLI
我使用以下命令启动了Asterisk CLI:Linux 无法使用exit或quit退出Asterisk CLI,linux,command-line-interface,asterisk,exit,Linux,Command Line Interface,Asterisk,Exit,我使用以下命令启动了Asterisk CLI: asterisk -vvvvvvc 当我尝试使用exit或quit退出CLI时,我看到以下错误: *CLI> exit No such command 'exit' (type 'core show help exit' for other possible commands) *CLI> quit No such command 'quit' (type 'core show help quit' for other possibl
asterisk -vvvvvvc
当我尝试使用exit或quit退出CLI时,我看到以下错误:
*CLI> exit
No such command 'exit' (type 'core show help exit' for other possible commands)
*CLI> quit
No such command 'quit' (type 'core show help quit' for other possible commands)
我可以使用
^C
退出CLI。为什么退出和退出不起作用?您应该首先启动星号
守护进程。然后连接到控制台:
启动守护进程非常简单,如下所示:
$>asterisk
然后,您可以连接到具有所有详细信息的控制台:
$>asterisk -rvvvvvv
我不相信使用星号-c有任何优雅的退出方式。正如错误消息所述,没有“退出”或“退出”命令。但Asterisk wiki中有一个条目讨论如何从CLI停止Asterisk: 您应该使用的命令是“core stop”(不过,请注意,这实际上会杀死asterisk,而不仅仅是shell),您有几个选项可供选择:
*CLI> help core stop
core stop gracefully -- Gracefully shut down Asterisk
core stop now -- Shut down Asterisk immediately
core stop when convenient -- Shut down Asterisk at empty call volume
在任何情况下,通过使用-c标志启动asterisk,您并不是作为服务启动它,而是在前台启动它,这意味着您必须让shell保持打开状态,才能让asterisk继续运行
您应该在不使用-c标志的情况下启动它,然后使用-r连接到它:
然后您可以使用^C退出“远程shell”。星号将在后台继续运行。我个人喜欢使用daemontools启动和监督服务:
希望有帮助 如果在前台运行,如果启动星号,例如:
asterisk -gcvvvvvvvvv
如果您尝试quit命令,它将不起作用,因为您正在前台运行
尝试连接到在后台运行的星号控制台,然后使用退出或退出:
[root@localhost asterisk]# asterisk -rvvv
localhost*CLI> exit
-r:连接到在后台运行的Asterisk并显示Asterisk CLI
-v:verbose命令。添加更多“v”:s以获取更多消息
输出:
星号清晰地结束(0)。执行最后一分钟的清理
要检查星号是否正在运行,请执行以下操作:
[root@localhost asterisk]# ps -ef | grep asterisk
要停止星号进程,请执行以下操作:
cli> core stop now
要启动星号服务,请执行以下操作:
[root@localhost asterisk]# service asterisk start
[root@localhost asterisk]# service asterisk stop
要停止星号服务,请执行以下操作:
[root@localhost asterisk]# service asterisk start
[root@localhost asterisk]# service asterisk stop
core stop在停止星号服务后优雅地退出控制台。然后按照您列出的命令进行操作<代码>星号-c
实际上在前台启动一个进程。无论如何,你的综合解决方案和公认的答案更有意义+1.