Hen*_*с м 5 linux files sort directory-listing du
如何一次性输出所有按大小排序的文件/目录,包括隐藏的
\n(名称以点开头的文件/目录)?
目录的大小是指目录及其所有子目录树中所有文件大小的总和。
\n与如何按大小对输出进行排序的du -h区别?是我请求的输出包括当前目录 \xe2\x80\x93 中的所有文件和目录,无论是否隐藏。
Hen*_*с м 15
\n\n如何输出按大小排序的所有文件/目录,包括隐藏的文件/目录?
\n
使用du(磁盘使用)命令,它是GNU coreutils的一部分:1
du -hs -- * .[^.]* | sort -h\nRun Code Online (Sandbox Code Playgroud)\n正.[^.]* 则表达式可确保包含隐藏文件和目录。
仅列出隐藏的文件和目录,按大小递增排序:
\ndu -hs -- .[^.]* | sort -h\nRun Code Online (Sandbox Code Playgroud)\n仅列出目录\xe2\x80\x93 无论是否隐藏 \xe2\x80\x93 按大小递增排序:
\ndu -hs -- */ .[^.]*/ | sort -h\nRun Code Online (Sandbox Code Playgroud)\n列出所有文件,按大小递增排序:2
\nls -AhlS | grep \'^-\' | tac\nRun Code Online (Sandbox Code Playgroud)\n仅列出隐藏文件,按大小递增排序:
\nls -hldS .* | grep \'^-\' | tac\nRun Code Online (Sandbox Code Playgroud)\n仅列出常规(非隐藏)文件,按大小递增排序:
\nls -lS | grep \'^-\' | tac\nRun Code Online (Sandbox Code Playgroud)\n问题中没有询问这一点,但有时您可能想要列出子目录树(包括当前目录)中的所有文件,按大小排序。3
\ndu -ah | sort -h\nRun Code Online (Sandbox Code Playgroud)\n输出将是子目录和文件的列表(可能非常长)。\n要将其限制为仅文件,您需要了解最大文件的文件扩展名(通过查看上面的命令)。
\ndu -ah | sort -h | grep .<file-extension>\nRun Code Online (Sandbox Code Playgroud)\n此处您应该替换<file-extension>为zip、png、jpg或最大文件具有的任何文件扩展名。
例子:
\ndu -ah | sort -h | grep .zip\nRun Code Online (Sandbox Code Playgroud)\ndu -ah | sort -h | grep .png\nRun Code Online (Sandbox Code Playgroud)\ndu(磁盘使用)Linux 手册页^) 表示不ncdu使用分析器ncduls目录内容)Linux 手册页1 \n我很感激地将我的解决方案归功于此评论。\n该--参数标志着选项的结束。
\ndu对于非常大的文件/文件夹,该命令可能会非常慢。\n请考虑使用该ncdu命令。
\n要在 Debian 衍生版本(包括 Ubuntu)上安装,请运行:sudo apt install -y ncdu。
\n在 Arch Linux(包括 MSYS2)上,运行:yes | pacman -Syu ncdu.
\n要使用它,请键入ncdu,然后按\xe2\x86\xb5。
2 \n-h标志ls以人类可读的方式输出文件大小。
\n该标志按大小递减的-S顺序对输出进行排序。\n管道不包括目录和符号链接。\n管道反转输出。 | grep \'^-\' | tac
3 \n当当前目录的大小是几兆字节而不是千兆字节时,这更可能令人感兴趣。
\n \n