加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

zsh chdir可以搜索和匹配历史记录吗?

发布时间:2020-12-13 23:05:47 所属栏目:Linux 来源:网络整理
导读:我是zsh的新手. 我可以输入类似cd%wiki的东西来跳转到?/ prj / golang / gowiki,如果它是唯一的. 但是如果cd%unix有两个以上的目录,只需显示匹配的目录. 这是我的样本历史记录. $dirs -v 0 ~/prj/golang1 ~2 ~/prj/unixconf3 ~/prj/unixconf/srv4 ~/memo5
我是zsh的新手.

我可以输入类似cd%wiki的东西来跳转到?/ prj / golang / gowiki,如果它是唯一的.

但是如果cd%unix有两个以上的目录,只需显示匹配的目录.

这是我的样本历史记录.

$dirs -v  
0   ~/prj/golang
1   ~
2   ~/prj/unixconf
3   ~/prj/unixconf/srv
4   ~/memo
5   ~/prj/golang/gowiki

解决方法

我不认为你可以在没有编写自定义版本的cd的情况下得到它(即创建一个名为cd的函数来接管内置cd.

你可以这样做:

DIRSTACKSIZE=20
setopt auto_pushd # Make cd push the old directory onto the directory stack.
setopt pushd_ignore_dups # Ignore duplicates at the directory stack.
setopt pushd_minus # makes the whole pushd list easier to use from 'cd'

如果你这样做了

% cd -[TAB]
1 -- /tmp
2 -- /etc

你可以使用这个数字:

cd -2 # jumps to /etc

另请注意,您可以使用其他命令(mv,cp等)到?-NUMBER的目录堆栈

mv notes.txt ~-[TAB]
1 -- /tmp
2 -- /etc
3 -- /my/very/complicated/dir/path

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读