fish
用于类Unix系统的Shell
fish是一个用户友好的shell全称Friendly Interactive Shell ,可用于如 Linux 这样的 Unix 类操作系统中。fish 当前具有语法高亮显示、高级的 Tab 键和→键自动补全、可找到的帮助、修订的shell语法、以及其他许多特性。
正文
fish是一个用户友好的命令行shell,全称Friendly Interactive Shell,可用于如 Linux 这样的 Unix 类操作系统中。fish 当前具有语法高亮显示、高级的 Tab 和 → 键自动补全、可找到的帮助、修订的shell语法、以及其他许多特性。fish 的最新版本为 1.21.11,于上月 24 日发布,它已经被包含在许多流行的 Linux 发行版中,如 Debian、Ubuntu、fedoraGentoo Linux、Arch 等。如果你对它有兴趣,那么可以根据自己所用的发行版本来选择是直接安装还是编译它。
简单介绍一下它的优点:
1. 自动补全、语法高亮
bash 的自动补全默认只是补全命令、路径,如果想补全变量、参数等,通常需要使用复杂的组合键,即便您能够记住它们,快速准确的按下这些组合键,也是一种严峻的考验。而fish 的自动补全可以自动识别语法,补全正确的内容。并且具有语法高亮的功能,
比如用 Mplayer 放 MP3:
mpl\u003ctab\u003e(ayer) -l\u003ctab\u003e(oop) \u003ctab\u003e(0)
-sh\u003ctab\u003e(uffle) -pl\u003ctab\u003e(aylist)
\u003ctab\u003e(mp3_playlist)
一阵猛按 \u003ctab\u003e 键,一个蛮长的命令就完成了。
补全结果不唯一时给出的提示中含有简短的说明,这样通常也不用看帮助了:)
比如:
mplayer -l
\u003ctab\u003e 后,自动将参数补全为 -lo 然后给出提示
-{lo}adidx (Load index from file) -{lo}op
(Loop playback) {花括号中为青色文字}
它的语法高亮功能十分有用,如果你输入的命令是正确的,则用青色显示,正确的参数用白色显示,错误的则一律用红色。
2. 方便的历史纪录搜索
还是上面的那个命令
mplayer -loop 0 -shuffle -playlist
mp3_playlist
用上翻配合下翻浏览命令历史,直到找到这个命令,当然那样太慢了。还可以输入以上命令中的某一部分,如 uffle 只要翻一次就可以找到了。
(还可以 META+上翻在已输入部分中插入某一历史单词)
3. 文件夹历史纪录
dirh (dir history)就可以显示当前会话中进入的文件夹纪录使用 prevd 和 nextd 跳转命令行假如曾进入过 1 2 3 4 5 这几个文件夹, prevd 4 可以让你在 5 中直接跳到 1
4. 其它的功能,fish 基本是兼容 bash 的。
键绑定也非常的相似,少数的键绑定不尽一致,
例如: 删除光标前的一个字符 (bash 为退格键,不方便)
Linux壳层是可以无穷变化的,可供选择的有非常多种的如:sh,C Shell,bash,fish等。
参考资料

Warning: Invalid argument supplied for foreach() in /www/wwwroot/newbaike1.com/id.php on line 362
目录
概述
正文
参考资料