带有目录/链接的制表符完成


25

我在archlinux和ubuntu的终端中都遇到制表符完成问题:

我有一个链接,该链接链接到主目录中一个名为“ something”的目录。现在,当我打开一个终端并想对该目录执行某项操作时,我们只需cd输入cd somet,然后单击tab即可,因为现在“ something”是完成操作的唯一可能性。

问题在于,在某些内容后面没有斜杠(应该是斜杠,因为它是目录的链接)。我必须再点击一次选项卡,斜杠才会出现。

有没有办法解决这个问题,即。这样斜杠直接出现?

Answers:



4

我有相同的行为,执行我不认为它是错误/问题。第一个完成是针对链接本身,第二个完成是针对链接的目标(恰好是目录)。

考虑一下:

$ ssh devio.us
fredden @ wolfman $ mkdir目录 
fredden @ wolfman $ ln -s目录链接 
fredden @ wolfman $ ls -l链接 
lrwxr-xr-x 1 fredden shifty 9 Jun 21 18:03链接->目录
fredden @ wolfman $ ls -l链接/
共8个
drwxr-xr-x 2 fredden shifty 512 Jun 21 18:03。
drwxr-xr-x 3 fredden shifty 512 Jun 21 18:03 ..
fredden @ wolfman $ 

3
还要说这是一个功能。这是100%一致的方式处理与之间的差异rm somethingrm something/
本杰明·班尼尔

我懂了。因此,如果是设计使然,我认为没有办法解决吗?只是我必须经常CD到目录/链接,而两次键入tab会花费更多时间。
houbysoft 2010年

1
不确定这是否有帮助,但是<code> cd link </ code>和<code> cd link / </ code>对我来说会产生相同的结果。
fredden

2
我相信OP希望cd进入链接的子目录,所以即使键入“ cd lin <tab> abc”来获得“ cd link / abc”而不是“ cd linkabc”(即不必也输入斜杠),即使“ cd链接”和“ cd链接/”的行为相同。

和Roger Pate:是的,我知道它的行为方式相同,问题恰恰是Roger Pate所说的。噢,我想我会需要输入两次Tab ..
houbysoft
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.