加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 任意命令完成 – 可能吗?

发布时间:2020-12-15 17:02:40 所属栏目:安全 来源:网络整理
导读:我正在寻找一种方法来挂钩自定义bash完成功能.问题是,我希望这个完成功能不仅适用于特定命令,还适用于所有命令. 这甚至可能吗?环顾四周,我在网上找不到任何资源. 要将问题减少到最简单的情况:是否可以始终对字符串’foo’进行制表完成? 含义echo f tab将
我正在寻找一种方法来挂钩自定义bash完成功能.问题是,我希望这个完成功能不仅适用于特定命令,还适用于所有命令.

这甚至可能吗?环顾四周,我在网上找不到任何资源.

要将问题减少到最简单的情况:是否可以始终对字符串’foo’进行制表完成?

含义echo f< tab>将扩展到echo foo,并且ls fo< tab>会扩展到ls foo

对于上下文:我试图在bash中实现类似于http://blog.plenz.com/2012-01/zsh-complete-words-from-tmux-pane.html的东西,但我开始担心这是不可能的.

您可以使用complete命令的-D选项执行此操作:
suggest_hello()
{   
    COMPREPLY=( hello )
    return 0
}

complete -D -F suggest_hello

现在每当我键入echo h< Tab>时,我都会收到回音问候.

$help complete
complete: ...
...
      -D  apply the completions and actions as the default for commands
          without any specific completion defined
...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读