您确实希望 shell 选择这些文件名,以防任何文件名包含 中的字符$IFS(通常是空格、制表符或换行符)。您可以通过要求 (GNU)find实用程序查找文件并用 NULL 分隔它们的文件名,然后使用 (GNU) 实用程序xargs将这些文件名重新分隔回 less 或 vim 来解决此问题,但我认为使用可以的 shell 更简单本地生成文件名:
zsh -c 'vim *(om[1,5])'
Run Code Online (Sandbox Code Playgroud)
这zsh使用带有通配符的单个vim命令进行调用,该通配符扩展到当前目录中最近修改的五个文件。这些文件名作为单独的参数安全地提供vim——它们不会被进一步分割$IFS。
请参阅更多示例:查找最新文件,是否可以在命令行参数中引用最近修改的文件?,并访问(按字母顺序排序)目录中的最新文件