如果我在按 Tab 之前输入了 4 个字符,ksh Tab 补全功能将不起作用

如果我在按 Tab 之前输入了 4 个字符,ksh Tab 补全功能将不起作用

如果我有文件夹 ~/1234567 并且我键入以下内容之一:

ls ~/123
cd ~/12

然后按 Tab 键,一切都很顺利。但是,如果在这两个命令中的任何一个上,我在按 Tab 键之前​​输入 1234,则第四个字符会被 / 替换,并且编辑文本会变得很奇怪;如果我按回车键,就好像〜之后的任何内容都会被忽略。这在文件系统中的不同位置是可重复的,并且不依赖于该位置处的其他文件/文件夹。

这在同一个机器上的 bash 上按预期工作。我使用的是 rhel6.9,ksh 版本为“93u+ 2012-08-01”。

仅当我使用 ~ 时才会出现此问题,而如果使用 ~username 形式则不会出现此问题;只是〜/ xxxx。

答案1

我可以确认这个错误ksh93也存在于其他运行的 Unice 上。

看看当前开发版本的ksh93shell 如何处理这个特定的错误似乎已修复。

开发版本可从 GitHub 获取(在master分支上)并且我尝试的版本报告了版本字符串Version A 93v-1400-g3d8a9fe4.

据我所知,目前还没有确定下一个版本的日期,但从对代码库的频繁提交来看,正在开发中。

相关内容