[分享]终极Shell——Zsh

仅仅用于软件推荐,不适合发求软件或软件使用问题方面的贴子
回复

心动VS行动?

行动
87
44%
心动
21
11%
以静制动
91
46%
 
总计票数: 199
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#31

帖子 kardinal » 2008-07-28 14:19

BigSnake.NET 写了:

代码: 全选

       CDPATH  命 令 cd 的搜索路径。这是一个冒号分隔的目录列表,shell 从中查找
              cd 命令的目标目录。可以是这样: ".:~:/usr".
假设~目录下有100个目录,不算夸张吧?
这时 cd [TAB] ?

再假设 /home/lighttpd/ 这下面有五六个目录
把它加到CDPATH里面
cd [TAB] 时多出五六个选项
但是这五六个选项里面,正常情况下用到的只有一个 html

如果/home/lighttpd/这样的目录有五六个, cd [TAB] 时多出来的选项是多少呢?
这个功能真的实用么?
恐怕只能使本来将就能用的cd,变得基本不能用吧
上次由 kardinal 在 2008-07-28 17:13,总共编辑 2 次。
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#32

帖子 kardinal » 2008-07-28 14:20

bones7456 写了:其实shell这种东西,够用就好
:lol: 说的太好了

ZSH正是你说的“够用”的SHELL
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#33

帖子 kardinal » 2008-07-28 14:21

roylez 写了:
kardinal 写了:
截个图瞅瞅效果
screen这种东东我一般不用
容易晕脑
我还有更好的办法 赶明个儿发个贴介绍下我的秘密武器 :lol:
如你所愿。附件是录像。
效果还行,不过个人不喜欢
标题栏本来就占地方了
下面再多出一个占地方的标签栏
如果屏幕分辩率只有640*40的话,两个栏直接占满了 :lol:
头像
zhuqin_83
帖子: 10606
注册时间: 2006-05-13 4:02
联系:

#34

帖子 zhuqin_83 » 2008-07-28 20:43

他强由他强,清风拂山冈,他横由他横,明月照大江;他自狠来他自恶,我自一口真气足!
HP Pavilion DV6-2064CA: AMD Turion II Ultra Dual-Core Mobile M640, HD4650, 2GBx2 DDR2-800, Seagate 500GB 7200RPM SATA, BD-ROM
DELL UltraSharp 2209WA
Arch64, Testing repo
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#35

帖子 kardinal » 2008-07-28 21:32

zhuqin_83 写了:他强由他强,清风拂山冈,他横由他横,明月照大江;他自狠来他自恶,我自一口真气足!
老大请明示 :lol:
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

★★★★★★★★★★★错误校正★★★★★★★★★★★

#36

帖子 kardinal » 2008-07-28 21:33

又想起来一个实用的功能:错误校正

注意下面的两幅图
-- directory -- 是补全类型提示

/etc/x11 [tab] 后被修正为 /etc/X11
补全类型提示变成了 -- corrections --

配置文件里

代码: 全选

zstyle ':completion:*:approximate:*' max-errors 1 numeric 
这一行可以设置容错的字数,数值太大就没法用了哦
附件
crct2.JPG
crct2.JPG (8.66 KiB) 查看 3327 次
crct1.JPG
crct1.JPG (8.32 KiB) 查看 3338 次
上次由 kardinal 在 2008-07-28 22:15,总共编辑 4 次。
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

#37

帖子 BigSnake.NET » 2008-07-28 21:35

kardinal 写了:
BigSnake.NET 写了:

代码: 全选

       CDPATH  命 令 cd 的搜索路径。这是一个冒号分隔的目录列表,shell 从中查找
              cd 命令的目标目录。可以是这样: ".:~:/usr".
假设~目录下有100个目录,不算夸张吧?
这时 cd [TAB] ?

再假设 /home/lighttpd/ 这下面有五六个目录
把它加到CDPATH里面
cd [TAB] 时多出五六个选项
但是这五六个选项里面,正常情况下用到的只有一个 html

如果/home/lighttpd/这样的目录有五六个, cd [TAB] 时多出来的选项是多少呢?
这个功能真的实用么?
恐怕只能使本来将就能用的cd,变得基本不能用吧
做个 ~/.cd_dirs ,里面放N个符号连接, 然后把这个 ~/.cd_dirs 放到 CDPATH
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#38

帖子 kardinal » 2008-07-28 21:54

BigSnake.NET 写了: 做个 ~/.cd_dirs ,里面放N个符号连接, 然后把这个 ~/.cd_dirs 放到 CDPATH
……有想法 :lol:

不过还是得承认,这个方法是可行的
实际上我也曾经想到类似符号连接的方法
但是操作起来太烦琐……实际上我从来没有这么弄过

还有一个问题
cd的时候 候选目录还是有点多

用Zsh, cd [tab] 不显示自定义的路径
cd ~[tab]不显示原有的路径
可以很好的过滤出来
上次由 kardinal 在 2008-07-28 22:20,总共编辑 1 次。
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

#39

帖子 BigSnake.NET » 2008-07-28 21:55

kardinal 写了:
BigSnake.NET 写了: 做个 ~/.cd_dirs ,里面放N个符号连接, 然后把这个 ~/.cd_dirs 放到 CDPATH
……有想法 :lol:

不过还是得承认,这个方法是可行的
实际上我也曾经想到类似符号连接的方法
但是操作起来太烦琐……实际上我从来没有这么弄过

不过有一个问题
cd的时候 候选目录还是有点多

用Zsh, cd [tab] 不显示自定义的路径
cd ~[tab]不显示原有的路径
可以很好的过滤出来
再变态的可以用 alias 替换掉 cd
:D
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
xiooli
帖子: 6956
注册时间: 2007-11-19 21:51
来自: 成都
联系:

#40

帖子 xiooli » 2008-07-28 21:57

任他zsh强,我自bash不下场 :lol:
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#41

帖子 kardinal » 2008-07-28 22:07

开始的时候我也是两个一起用
Bash要是扔掉,还有点提心吊胆

但是用了这么长时间,渐渐的也就忘了Bash长啥样的了


不放心的话可以两个一起用啊,总之先装一个,配置也很简单,哪怕偶尔用一下也好啊 :lol:
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#42

帖子 kardinal » 2008-07-28 22:10

BigSnake.NET 写了: 再变态的可以用 alias 替换掉 cd
:D
何必呢…… 何苦呢……
装一个ZSH先,偶尔用一下也行啊

广告词:喜欢张韶涵么?喜欢她就用ZSH V-_-V
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: ★★★★★★★★★★★错误校正★★★★★★★★★★★

#43

帖子 eexpress » 2008-07-29 0:43

kardinal 写了:又想起来一个实用的功能:错误校正

注意下面的两幅图
-- directory -- 是补全类型提示

/etc/x11 [tab] 后被修正为 /etc/X11
补全类型提示变成了 -- corrections --

配置文件里

代码: 全选

zstyle ':completion:*:approximate:*' max-errors 1 numeric 
这一行可以设置容错的字数,数值太大就没法用了哦
大小写补全修正?这bash都带了的。再看看还有其他的没吧。
● 鸣学
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#44

帖子 kardinal » 2008-07-29 1:10

我例子举的不好 :?

不是单纯的修正大小写,而是各种拼写错误
比如说上面的例子,如果输入的是11或者s11,它一样会修正为X11

有一个前提,就是每次修正,只允许有一处字符错误
两个以上的错误,除非可以匹配其它的选项,否则就不能修正
12 就不能修正为X11 ,除非候选里有 X12、Y12、Z12……

当然可以把容错字数改大一些,不过太大了也没有意义了
随便输点什么,就可以匹配所有的,和没有一样 :lol:
kardinal
帖子: 750
注册时间: 2006-03-19 11:39

#45

帖子 kardinal » 2008-07-29 1:14

一看就知道阿姨没有装起来
不然随便试验下就知道了

又不是很麻烦,横竖就那几兆,动动手指头就完了
固执的欺骗自己,强迫倾向 :lol:
回复