问题标签 [bash-completion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1545 浏览

linux - Bash 选项卡完成更改了行为

很长一段时间以来,我已经习惯了能够输入如下内容:

$opt/foo/m

等等以在不同的环境中导航我的项目。这真的很有用:只需设置 $opt(例如,/home/$USER/projects/opt - 然后从您的开发用户转到 qa,再进行直播,而 $opt 就是 $opt。

在 bash4.2 发布时,这种行为已经改变。现在制表符完成会导致转义的 $ 符号。

$opt/foo => \$opt/foo <= 完全不是我的意思!

当维护人员正在讨论这应该如何工作时,我想找到一套新的习惯,我可以用来回到我的舒适区。什么是好技巧?我的手指可以学习的东西,配置一些根目录并从那里开始,而不用担心我在哪里。

0 投票
1 回答
614 浏览

substring - Bash 子字符串文件完成

bash 部分/子字符串文件完成是否类似于 zsh 的功能?

也就是说,不需要用户输入文件名的前缀,然后是tab;用户还可以输入文件名的子字符串,然后输入制表符。

说一个目录包含一个文件abcdef,那么不仅会ab<tab>补全这个文件名,还会bc<tab>等等cd<tab>

0 投票
2 回答
1658 浏览

git - 如何让 GIT_PS1_SHOWDIRTYSTATE 不针对裸仓库运行?

因此,我为我的 git 安装设置了 bash 自动完成功能,这太棒了。但是,我有一个裸仓库,我偶尔必须直接与 (git reset例如) 交互,并且每当我cd进入裸仓库时,GIT_PS1_SHOWDIRTYSTATE我必须向我显示正常工作树状态的设置运行,并且我看到这条消息:

fatal: This operation must be run in a work tree

我认为,它试图git status对那个 repo 运行一个,但是光秃秃的,它会报告一个错误。

每次在我的裸仓库中做任何事情时,我都不想看到那个错误;它已经让我失望了几次。

0 投票
8 回答
41453 浏览

bash - 在后台运行 bash 命令而不打印作业和进程 ID

在 bash 中在后台运行进程相当容易。

但是输出很冗长。第一行打印后台任务的作业 ID 和进程 ID,然后是命令的输出,最后是作业 ID、状态和触发作业的命令。

有没有办法抑制运行后台任务的输出,使输出看起来与最后没有 & 符号的输出完全相同?IE:

我问的原因是我想将后台进程作为选项卡完成命令的一部分运行,因此该命令的输出必须不间断才能有意义。

0 投票
2 回答
405 浏览

terminal - 完成前缀显示长度在我的终端应用程序上不起作用

我在 .inputrc 上发现了很多问题,答案包括使用 Mac OS X terminal.app 的人。

但是我已经设置了这个属性,它并没有改变 readline 的行为。我在 Ubuntu 上尝试了相同的 .inputrc 并且成功了……</p>

我应该对 terminal.app 采取什么具体措施吗?

0 投票
1 回答
1609 浏览

bash - Cshell 中的反向增量搜索

我在办公室使用 Cshell,它似乎没有反向增量搜索历史。有什么方法可以reverse-i-search在 cshell 中启用(如 bash 中的那个)。

谢谢。

0 投票
1 回答
1795 浏览

bash - 自动完成工具命令选项

cmmget我的Linux 机器中有一个名称为可执行文件。它是一个命令行工具。我希望auto-complete feature为该工具的不同选项开发一个。

命令的一些示例如下:

我的需要是在我键入 cmmget -d 并按 Tab 键时显示不同选项集的列表,例如等healtheventsversion然后我可以从列表中选择所需的选项并完成命令。

这实施起来有多容易?有人可以发布一个链接,我可以参考开发这个要求吗?

0 投票
2 回答
21081 浏览

python - Python argparse 和 bash 完成

我也想在参数中自动完成我的 python 脚本。

我从来没有真正理解过 bash_completion 是如何工作的(对于参数),但是在我深入研究之后我明白了:

  1. 它使用“完成”将完成功能绑定到命令
  2. 每个完成函数基本上都是参数解析器的副本

特别是第二点不是很好,因为我想让它自动生成。

最好的办法是,shell 在每个 TAB 处向我的程序询问要完成什么,但我的印象是这真的行不通,对吗?

第二种选择可能只是编写一个从 argparse 解析器到正确完成的 shell 函数的转换器。

0 投票
1 回答
219 浏览

bash - 异步加载 bash_completion 脚本

bash_completion我脚本中的脚本.bash_profile运行缓慢,导致新终端启动速度很慢。是否可以提供一个 shell 来运行命令,然后在后台获取 bash_completion 脚本?

0 投票
4 回答
2043 浏览

bash - 自定义目录完成附加空格

我有以下目录结构:

我想输入cdw y<TAB>并得到cdw yyy/<CURSOR>结果,所以我可以添加cdw yyy/a<TAB>并得到cdw yyy/aa<CURSOR>

我想出的解决方案给了我以下内容:
cdw y<TAB> => cdw yyy<SPACE><CURSOR>

以下代码我到目前为止:

有什么想法有什么问题吗?在我看来,完成过程似乎已经完成,并且不再期待任何输入。