linux - tcsh 以 ls -l 格式完成

标签 linux shell unix autocomplete tcsh

在 tcsh.rc 中设置自动列表并按 Tab 完成文件名时,我会以“常规”ls 命令的格式获得可用完成列表。 有没有什么方法可以设置 tcsh,让按 Tab 键将显示“ls -l”格式的可用完成列表? 或者如果没有,那么只需按日期对“常规”列表进行排序?

最佳答案

pressing tab will show a list of available completions in the format of "ls -l"?

不,这是不可能的。

tcsh 中的补全功能是通过获取单词列表(即我的裤子着火了),检查其中一个单词是否匹配,然后将该单词插入命令行中来实现的。

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

just sort the "regular" list by date?

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

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

(此信息来自仔细阅读手册页和源代码中的 tw.parse.c。)

关于linux - tcsh 以 ls -l 格式完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26117781/

相关文章:

python - SimpleITK.Show() 在 Linux 上的 ImageJ 中生成错误

linux - 如何在 LFS 系统上安装 wget

linux - emacs23 到 emacs24 : imap shell "Opening nnimap server...failed: Pseudo-terminal will not be allocated ..."

python - 可以在控制台中使用 Kafka 消息但不能使用 Python 库吗?

shell - 从 netstat 输出中提取 IP

unix - tomcat无法启动

c++ - 消息队列中的accept() IPC UNIX

python - Linux 上使用 pygtk (gtk.gdk) 的桌面/根窗口上的键盘/鼠标事件

php - 通过 PHP 与不同用户使用 SSH

docker - 无法在Alpine容器中使用os.exec通过shell运行kubectl命令