MRU
z.lua
提供 dirstack
让你更便捷的访问最近刚刚去过的目录,而不需要输入任何关键字。这个方法叫做 dirstack
,它记录着最近你刚刚去过的 10 条最新路径,然后是用 z -
,z --
和 z -{num}
来操作:
```bash# 显示当前的 dir stack
$ z —
0 /home/skywind/work/match/memory-match
1 /home/skywind/.local/etc
2 /home/skywind/software/vifm-0.9.1
3 /home/skywind/work
4 /home/skywind/work/match
cd 到栈里 2 号路径
$ z -2
=> cd /home/skywind/software/vifm-0.9.1
弹出栈顶 (cd 到上一次的老路径),和 “z -0” 相同
$ z -
=> cd -
这个 `dirstack` 是根据 z.lua 的路径历史数据库计算的出来的,和具体的 shell 或者操作系统无关。你退出再登陆不会丢失这些记录,不同的 shell 之间也可以共享同一份记录。
此外,还能通过前面提到的 `-I` 和 `-t` 参数组和,使用 fzf 选择最近去过的目录:
```bash
alias zh='z -I -t .'
方便起见,定义个新的别名 zh
(回到历史路径的意思),我们用 -t
参数来告诉 z.lua
按时间戳为权重排序,同时 -I
启用 fzf 搜索,最后句号代表任意路径。
那么当我们在命令行敲入 zh 时,就可以用 fzf 进行历史路径操作了:
第一列上次访问距今多少秒,第二列是目录名。你可以试着敲几个字母,用 fzf 的字符串模糊匹配进行定位,或者用光标键的上和下(CTRL+J/K 也可以)来上下移动,最后按回车 cd 过去,或者 ESC 放弃。
当前内容版权归 skywind3000 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 skywind3000 .