如何在 Linux tclsh 中通过光标键获取命令历史记录
Posted
技术标签:
【中文标题】如何在 Linux tclsh 中通过光标键获取命令历史记录【英文标题】:How to get Command history by cursor key in Linux tclsh 【发布时间】:2011-03-03 18:16:51 【问题描述】:可以在 TCL shell (tclsh) 中使用光标键(如向上箭头键)获取命令历史记录。
我正在使用 linux 版本 2.6.21 的 Fedora 上运行 tclsh。
【问题讨论】:
【参考方案1】:您想访问 readline 库,您可以使用 rlwrap:
$ rlwrap tclsh
有用的选项是 -c
用于文件名完成,-f
用于将文件中的单词添加到完成列表:
$ rlwrap -cf my_complete_file tclsh
由于您几乎总是想使用 rlwrap
,因此添加一个 shell 别名很有用:
alias tclsh='rlwrap tclsh'
【讨论】:
嗨,格伦,你是 TCL 的忠实粉丝,我喜欢 TCL,想进一步探索该语言,以便在我的工作中使用它。你能给我一些学习 TCL 的链接或书籍吗? @Adi:在另一个问题中问这个问题。这就是本网站的运作方式。 不为人知的好工具! 最初由@glennjackman 提供的Tcl 教程的链接现在是404。试试这个:tcl.tk/man/tcl8.5/tutorial/tcltutorial.html【参考方案2】:我通常使用 ActiveTcl 附带的 tkcon,或者单独安装。 tkcon 有很多功能,但我用得最多的是命令行编辑方面。
【讨论】:
感谢 vu tkcon 是一个不错的建议。我在 ubuntu 中使用它,但在 Fedora 中使用时出现错误“应用程序初始化失败:没有显示名称和 $DISPLAY 环境变量” 在 Ubuntu 14.04 上工作。不幸的是,它打开了一个 GUI shell,不能直接在我的 xterm 中运行? :-(【参考方案3】:另一个好的纯终端选项是 tclsh-wrapper
Link to tclsh-wrapper on github
它提供丰富的命令行编辑、历史记录、别名和关键字补全,但不需要 X11。键映射的文档也可用。
【讨论】:
虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review 恕我直言,重要的部分是存在另一个好的解决方案,并提供了该解决方案功能的简明概述。少了什么东西?如果不给链接会更好吗?请注意,投票最多的两个答案甚至不包括功能摘要。随意详细说明和/或提供示例,我会看看可以做些什么来改进答案。以上是关于如何在 Linux tclsh 中通过光标键获取命令历史记录的主要内容,如果未能解决你的问题,请参考以下文章