当前位置: 首页 > 知识库问答 >
问题:

在Unix中按大小查找和排序文件

景鹏飞
2023-03-14

我想在shell编程中创建一个函数,它获取两个参数,目录名和文件名,并执行以下操作:它从给定的目录名开始搜索文件名,然后进入目录名的所有子目录继续搜索。我希望输出是找到文件名的每个父目录,使用文件名大小进行排序。

我们将不胜感激,谢谢。

共有1个答案

狄信然
2023-03-14

不确定您要求的是哪个Unix,但对于Linux或常见的Unix系统:

find <directory> -name "<filename>" -ls | sort -k 7 -n -r | awk '{print $NF}' | xargs -n 1 dirname
  • 排序

例子:

# Find parent directory of all types.h under /usr/include, sorted by file size in desc order

$ find /usr/include/ -name "types.h" -ls | sort -k 7 -n -r | awk '{print $NF}' | xargs -n 1 dirname
/usr/include/x86_64-linux-gnu/bits
/usr/include/x86_64-linux-gnu/sys
/usr/include/c++/7/parallel
/usr/include/rpc
/usr/include/linux/sched
/usr/include/linux/iio
/usr/include/linux
/usr/include/asm-generic
/usr/include/x86_64-linux-gnu/asm
 类似资料:
  • 本文向大家介绍PowerShell查找分区中最大文件的方法(查找文件并按大小排序),包括了PowerShell查找分区中最大文件的方法(查找文件并按大小排序)的使用技巧和注意事项,需要的朋友参考一下 本文介绍一个PowerShell命令,用于将某个目录或磁盘(如D盘)下占用空间最大的前几个文件。这个任务在其它编程语言中,可能要大段大段的代码,而在PowerShell中,我们只需要一行。 当我们发现

  • 本文向大家介绍Linux中du-查看文件夹大小并按大小进行排序详解,包括了Linux中du-查看文件夹大小并按大小进行排序详解的使用技巧和注意事项,需要的朋友参考一下 Linux中du-查看文件夹大小并按大小进行排序详解 某天,我想检查一下电脑硬盘的的使用情况,作为一个命令控,废话少说,开始吧: 使用df 命令查看当前磁盘使用情况:  下面du命令就上场了:  能看到上边得到的相同的结果吧,  

  • 是否可以在MongoDB中找到最大的文档大小? 显示的是平均大小,这并不具有代表性,因为在我的例子中,大小可能会有很大差异。

  • 问题内容: 我发现在Bash中没有容易获得目录大小的方法吗? 我希望当我键入时,它可以递归地列出目录文件大小的所有总和,并同时列出文件并按大小顺序排序。 那可能吗? 问题答案: 只需导航到目录并运行以下命令: 或添加-h以增加人类可读的大小,并添加-r首先打印较大的目录/文件。

  • 本文向大家介绍Linux du命令查看文件夹大小并按降序排列,包括了Linux du命令查看文件夹大小并按降序排列的使用技巧和注意事项,需要的朋友参考一下 1. df -lh 2. du -s /usr/* | sort -rn 这是按字节排序 3. du -sh /usr/* | sort -rn 这是按兆(M)来排序 4.选出排在前面的10个 du -s /usr/* | sort -rn |

  • 我试图找到给定排序数组的最大K数。 ex:输入- 到目前为止,我编写的代码返回最大的K元素,但它需要返回最大的K数字。任何帮助都将不胜感激。