【问题标题】:Adding init.d service (chkconfig / autocomplete in shell)添加 init.d 服务(shell 中的 chkconfig / autocomplete)
【发布时间】:2011-09-30 19:35:55
【问题描述】:

我已经制作了一个启动脚本(即 myserviced)并将其放入 /etc/init.d/

我跑了

chkconfig --add myserviced

我可以使用以下方法启动/停止/重新启动刚刚找到的服务:

service myserviced start

等等。但是,我注意到当我键入“服务”然后执行 TAB(以获取可能完成的列表)时,我没有在可能的完成列表中看到 myserviced(它列出了所有其他服务)。如何将 myserviced 添加到自动完成列表中?

这是在 RHEL 上的 zsh 中。

谢谢

【问题讨论】:

  • 对我有用,即使该文件不可执行。尝试在 /etc/init.d 中创建一个痛苦文件,看看它是否显示在 zsh 选项卡完成中。

标签: linux service autocomplete zsh system-administration


【解决方案1】:

您可以使用以下命令将/etc/init.d/ 中列出的所有脚本添加到服务命令中:

complete -W "$(ls /etc/init.d/)" service

-W 将从 ($) 指定的路径创建单词列表,“服务”将用于自动完成。

【讨论】:

    【解决方案2】:

    确保myserviced 是“可执行的”。 (即chmod +x /etc/init.d/myserviced

    补全列出了/etc/init.d中的所有可执行文件,而service本身不管权限如何都可以工作。

    【讨论】:

    • 该文件是可执行的(并且仍然没有显示在“服务 ”的选项卡完成中)
    猜你喜欢
    • 2017-09-12
    • 2015-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-28
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    相关资源
    最近更新 更多