我正在使用ls -l -t
来获取按时间排序的目录中的文件列表。
我想将搜索结果限制在列表中的前2个文件中
这可能吗?
我试过用grep和我一起努力。
答案 0 :(得分:70)
您可以将其发送到head
:
ls -l -t | head -3
会给你前3行(2个文件和总数)。
这将只提供前2行文件,跳过大小:
ls -l -t | tail -n +2 | head -2
tail
剥离第一行,然后head
输出接下来的两行。
答案 1 :(得分:7)
为避免处理顶部输出行,您可以反转排序并获取最后两行
ls -ltr | tail -2
这是非常安全的,但根据您在找到这两个文件后对这两个文件条目的操作,您应该阅读Parsing ls有关使用ls
获取文件和文件信息的问题。
答案 2 :(得分:2)
您可以使用head
命令仅抓取前两行输出:
ls -l -t | head -2
答案 3 :(得分:0)
你必须通过头脑。
ls -l -t |头-n 3
将输出两个第一个结果。
答案 4 :(得分:0)
或者你可以试试这个
ls -1 -t | head -2
-1开关跳过标题行。