以ls -l的格式完成Tcsh

时间:2014-09-30 09:51:36

标签: linux shell unix autocomplete tcsh

在tcsh.rc中设置自动列表,并按Tab键完成文件名时,我会得到一个可用的完成列表,格式为"常规" ls命令。 有没有办法设置tcsh的方式,按Tab键将显示可用的完成列表,格式为" ls -l"? 或者如果没有,那么只需排序"常规"按日期列出?

1 个答案:

答案 0 :(得分:0)

  

按Tab键将以“ls -l”格式显示可用的完成列表?

不,这是不可能的。

tcsh中的完成通过获取单词列表(即my trousers are on fire)来工作,检查其中一个单词是否匹配,然后在命令行中插入该单词。

没有任何功能说“向用户显示此内容,但在命令行中插入其他内容”。因此,虽然您可以使用ls -l完成命令,但这将毫无用处,因为您将在命令行中获得整行。

  

按日期排序“常规”列表?

这也是不可能的,因为tcsh对完成进行排序。你无法禁用此功能......

抱歉:-(我相信至少zsh能够做到这一点,但我不确定。也许bash也能做到这一点(但又一次,不确定)。

(此信息来自仔细阅读联机帮助页,以及源代码中的tw.parse.c。)