终端命令/脚本按类型和大小显示文件

时间:2014-08-15 09:01:05

标签: linux bash file sorting size

我必须经常处理大量需要排序的文件 - 按大小和文件类型排序。请分享您对bash脚本或终端命令(使用正确的参数)的建议,这些建议将按照上述标准对文件进行排序。一个很大的优点是脚本还可以按文件类型显示实际的文件数,如下所示:

  • 831 JPEG文件/ 566MB
  • 122 MP4档案/ 4000MB
  • 98 ZIP文件/ 50MB

我在Linux上相当新,所以关于这个脚本/命令的不同部分做什么的任何反馈都会很棒,因为我想了解它实际上是如何工作的。

提前谢谢大家!

3 个答案:

答案 0 :(得分:1)

你可以试试这个:

ls -lshR

使用开关-h,您可以轻松阅读尺寸(人类可读),使用开关-R,您可以递归地进入文件夹。

最终您可以使用grep命令保存输入并查找文件类型:

$ ls /your_dir -lshR > your_file

现在您可以搜索文件

$ grep -e .mp4 your_file

答案 1 :(得分:0)

按大小列出:

ls -lS

仅列出包含" .txt":

的文件
ls | grep .txt

计算包含" .txt":

的文件
ls | grep .txt | wc -l

答案 2 :(得分:0)

您是否假设文件扩展名确定文件类型?在Linux中不一定是这种情况,我们倾向于测试实际的文件内容。为此,您可以使用file命令:

file Kalimba.mp3

返回

Kalimba.mp3:    MPEG-1 Layer 3 with ID3v2