ls 命令的前两个结果

新手上路,请多包涵

我正在使用 ls -l -t 来获取按时间排序的目录中的文件列表。

我想将搜索结果限制为列表中的前 2 个文件。

这可能吗?

我已经尝试过 grep 并且我很挣扎。

原文由 Fidel 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 986
2 个回答

您可以将其通过管道传输到 head

 ls -l -t | head -3

将为您提供前 3 行(2 个文件和总数)。

这只会给你前两行文件,跳过大小行:

 ls -l -t | tail -n +2 | head -2

tail 第一行,然后 head 输出接下来的两行。

原文由 dag 发布,翻译遵循 CC BY-SA 3.0 许可协议

为避免处理顶部输出行,您可以反转排序并获取最后两行

ls -ltr | tail -2

这是相当安全的,但取决于您在找到这两个文件条目后将如何处理它们,您应该阅读 Parsing ls 关于使用 ls 获取文件和文件信息的问题。

原文由 Stephen P 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题