Fish 是一款非常友好的 Shell,大力推荐!

sh/bash/dash/ksh/zsh等Shell脚本
回复
kevista
帖子: 6
注册时间: 2009-06-08 18:09

Fish 是一款非常友好的 Shell,大力推荐!

#1

帖子 kevista » 2009-07-27 0:15

使用命令 sudo apt-get install
fish 安装它。完成后,运行命令 fish 切换到 fish, exit 返回 bash。

简单介绍一下它的优点:
1. 自动补全、语法高亮
bash 的自动补全默认只是补全命令、路径,如果想补全变量、参数等,
通常需要使用复杂的组合键(见上面 bash 的介绍),即便您能够记住
它们,快速准确的按下这些组合键,也是一种严峻的考验。而 FISH 的
自动补全可以自动识别语法,补全正确的内容。并且具有语法高亮的
功能,比如用 MPLAYER 放 MP3:
mpl<tab>(ayer) -l<tab>(oop) <tab>(0)
-sh<tab>(uffle) -pl<tab>(aylist)
<tab>(mp3_playlist)
一阵猛按 <tab> 键,一个蛮长的命令就完成了。
补全结果不唯一时给出的提示中含有简短的说明,这样通常也不用看
帮助了:)比如:
mplayer -l
<tab> 后,自动将参数补全为 -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 的。键绑定也非常的相似,少数的
键绑定不尽一致,例如:
5. \C-h 删除光标前的一个字符 (bash 为退格
键,不方便)
修改 /etc/fish_inputrc 这个文件,增加以下行:
"\C-n": history-search-forward
"\C-p": history-search-backward
现在使用 Ctrl+p 上翻,使用 Ctrl+n 下翻。如果已经在命令行中输入
字符,那么 Ctrl+p 就是在历史纪录向上查找您输入的字符,Ctrl+n 为
向下查找,非常的方便。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: Fish 是一款非常友好的 Shell,大力推荐!

#2

帖子 eexpress » 2009-07-27 10:45

有bug的。
● 鸣学
头像
bones7456
帖子: 8495
注册时间: 2006-04-12 20:05
来自: 杭州
联系:

Re: Fish 是一款非常友好的 Shell,大力推荐!

#3

帖子 bones7456 » 2009-07-27 10:49

类似你例子里的mplayer的补全,bash也有啊
关注我的blog: ε==3
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: Fish 是一款非常友好的 Shell,大力推荐!

#4

帖子 tusooa » 2009-08-25 14:21

用来输命令还好一点
看了一下文档,太多地方跟bash不一样了 :em01
ps:PATH分隔还是用` '

代码: 全选

] ls -ld //
头像
wangdu2002
帖子: 13284
注册时间: 2008-12-13 19:39
来自: 物华天宝人杰地灵

Re: Fish 是一款非常友好的 Shell,大力推荐!

#5

帖子 wangdu2002 » 2009-08-25 14:24

全面超载了bash? :em01
行到水穷处,坐看云起时。
海内生明月,天涯共此夕。
--------------------吾本独!
回复