Zsh 在当前目录中填写最新使用的文件

Zsh 在当前目录中填写最新使用的文件,zsh,Zsh,我正在寻找一种在命令行上快速访问最新文件/目录的方法,最好是在ZSH中 ls -d *(om[1]) 如果我想在命令中使用to,例如less*(om[1]) 这同样有效 然而,键入所有的括号是很乏味的,我经常使用它,因此我正在寻找一种方法来为这个字符串创建一个快捷方式 我在.zshrc文件中创建了一个函数 lf(){ ls -d *(om[1]) } ,我可以这样使用: less <$(lf) less <`lf` 不起作用 有没有一种不使用“难以键入的字符”就可以快速访问最

我正在寻找一种在命令行上快速访问最新文件/目录的方法,最好是在ZSH中

ls -d *(om[1])
如果我想在命令中使用to,例如less*(om[1])

这同样有效

然而,键入所有的括号是很乏味的,我经常使用它,因此我正在寻找一种方法来为这个字符串创建一个快捷方式

我在.zshrc文件中创建了一个函数

lf(){ 
ls -d *(om[1])
}
,我可以这样使用:

less <$(lf)
less <`lf`
不起作用

有没有一种不使用“难以键入的字符”就可以快速访问最新文件的方法?理想情况下,它将只是一个沿着

less LATEST
有什么想法吗?

你想要一个zsh吗

你可以用这个

_最近的文件(^Xm)

在命令行中填写与模式匹配的最近修改的文件名(可能为空)。如果给定一个数值参数N,请完成最近修改的第N个文件。请注意,完成(如果有)始终是唯一的

--
zshcompsys(1)可绑定命令

因此,我们可以通过键入CTRL-x-m来获取最新的文件。例如:

% less ;# typing `CTRL-X m` here, we could get:
% less newest-file-or-directory
% less *.log ;# when I want the newest *.log:
% less newest.log
我们可以在这里指定一些模式,例如:

% less ;# typing `CTRL-X m` here, we could get:
% less newest-file-or-directory
% less *.log ;# when I want the newest *.log:
% less newest.log

必须有一些
自动加载-Uz compinit;compinit
~/.zshrc
中。

也是一个很好的解决方案-我没有意识到这一点。我认为答案是等价的,但格伦首先回答,所以我会接受他的回答。