使用 vim 打开目录中的最后一个文件

使用 vim 打开目录中的最后一个文件

我写日记并以 YYYY-MM-DD.markdown 格式命名文件。当我想修改最后一条条目时,我想使用快捷方式打开它,而不是写出完整的日期(bash 补全根本没用)。

如何在 vim 中打开最后一个文件(按字母顺序排列)?

答案1

如果它确实是最后一个文件:

vim $(find . -type f  -maxdepth 1 | sort | tail -n 1)

或者更具体地说关于 markdown 文件:

vim $(find . -name "*.markdown" -maxdepth 1 | sort | tail -n 1)

当然,您可以在 bash 配置文件中为其创建一个别名。

alias newest='vim $(find . -name "*.markdown" -maxdepth 1 | sort | tail -n 1)'

编辑是因为 xargs 和 vim 在退出后会引起一些严重的问题。必须找出原因。我以前也用过反引号,但使用$()而不是 反引号 是新的做法。

答案2

vim "$(ls -1 *.markdown | tail -n 1)"

使用文件名中的空格,并且不需要find(默认情况下会递归,这可能不是您想要的)也不需要sortls默认情况下输出按字母顺序排列)。

相关内容