问题标签 [du]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
6 回答
15152 浏览

windows - 使用批处理脚本获取文件夹大小的快速(er)方法

请参阅以下原始问题,了解不同方式的一些测试比较:


所以到目前为止我尝试了两种方法:

1.使用Get Folder Size from Windows Command Line中的代码遍历目录:

2.保存a的输出

成一个文本文件,然后读入底部的大小

3.我现在尝试的最后一种方法是使用 du(来自 MS 的磁盘实用工具 - https://technet.microsoft.com/en-us/sysinternals/bb896651.aspx)。


现在除了#3之外,这两种方式对于我需要的东西(数千个文件)来说似乎都太慢了。所以问题是其中哪一个是最快的/应该是最快的,以及是否有任何其他快速(er)方法来获取包含 100k+ 个文件(并且有 100 个文件夹)的文件夹内容的大小


开始编辑:

下面是我进行比较的非常老套的方法(屠宰我的程序以查看一些输出)
有一些小错误,如选项 3 之类的部分会失败,因为它试图处理大于 32 位限制的数字,我当然还有一些问题,但我认为一般的时间安排是显而易见的,除非我真的搞砸了我的逻辑。

选项 I:遍历目录,使用 VB 脚本从“dir”读取文本输出并查找最后的大小 + 将其转换为 MB(最初是从其他地方得到的,但实际上我失去了它的位置来自) 选项 II:使用 findstr 管道进行迭代并直接输出结果(不转换为 MB) - 来自 @MC ND 选项 III:使用紧凑命令进行迭代 - 来自 @npocmaka 选项 IV:来自 @user1016274 - 使用 robocoby

(还有更多答案,但这些是我能够合并的答案)

这些是我得到的结果,它们之间的相关性非常一致,robocopy 把它们吹走了

选项 I 和选项 II 通常接近,选项 II 稍好一些(两者都在 1 分 10 秒到 2 分 10 秒之间,不确定差异来自哪里) 第 III 部分 - 16-17 分钟 第 IV 部分 - 10-20 秒

0 投票
2 回答
1257 浏览

macos - perl 系统调用“没有这样的文件或目录”

我正在尝试运行一个 Perl 脚本,该脚本从标准输入读取文件名并使用系统命令调用 du。当我在命令行上运行 du 命令时,它工作正常,但是当使用 system() 在 perl 脚本中调用 du 时,我得到“没有这样的文件或目录”。文件名确实有空格和撇号,我在将其传递到 perl 脚本之前对其进行了转义。perl 脚本本身非常简单:

我还使用 shell 脚本来转义文件名。一行脚本如下:

通过 sed 运行之前和之后的示例文件名是:

我尝试过和不逃避空格和撇号。

输出是:

一件重要的事情,我在终端窗口的 mac OS X 10.95 上运行它。Perl v5.16.2

你可能会问我想做什么。我正在尝试获取单个 Mac TimeMachine 备份的大小。

所以谁能告诉我我需要什么?

0 投票
1 回答
2100 浏览

linux - df and du giving different results

When I use df -h it gives following result for /appl directory

#xA;

But when I enter that directory cd /appl and run du -sh it is giving me the following result :

#xA;

If the /appl mountpoint is occupied 32GB why is it showing that it's directories total to 4.9G?

0 投票
5 回答
1127 浏览

regex - 匹配表达式的文件的 Linux 磁盘使用情况

我有一个像这样的多用户安装的硬盘驱动器:

我想查看每个用户的文件夹,找到与表达式匹配的所有文件(例如,"*.txt"),然后将所有这些文件使用的空间相加,并按每个用户群报告:

我找到了所有文件的目录:

我以为我会使用循环遍历每一行来txtfiles.dat计算每个文件夹中的磁盘使用情况,但这似乎很麻烦。有没有更简洁的方法来做到这一点?类似于du在每个用户的文件夹中查找但只计算与表达式匹配的文件的东西?

0 投票
3 回答
3723 浏览

linux - du 命令显示什么?

我有一个普通文件夹,所以当我右键单击时,转到属性并检查它的数据大小,它给出了 37.3KB。但是当我使用 du 命令时,它显示 104KB

这两个不应该给出相同的答案吗?

0 投票
1 回答
6444 浏览

linux - 如何在Linux中列出目录中的文件和文件夹及其总大小?

在不显示所有子目录的情况下,我无法获得任何命令来列出目录中的所有文件和文件夹及其总大小。例如,我有一个目录

这里 data-1 和 data-2 是两个文件夹,有很多子文件夹和文件。它们的实际大小为 123G 和 115G。

当我使用“du”命令时,它会列出所有子目录并花费太多时间。当我使用“ll”时,它没有显示包含子文件夹的文件夹的实际大小。我想要的是这样的:

0 投票
1 回答
1724 浏览

linux - 如何排序 du -h --max-depth=1,按文件夹名称排序?

报告:

如何使其按以下顺序排序(按文件夹名称排序):

甚至:

如何处理这个问题?

0 投票
2 回答
454 浏览

linux - df 和 du 报告使用的文件系统数量不同

我有一个 centos 系统,它使用 df 报告的磁盘使用量比使用 du 的多。我读过当文件句柄未关闭时可能会发生这种情况。但是,我已经多次重新启动系统并且 lsof 没有显示任何搁置的文件句柄。

该主机正在镜像我每晚使用 lftp 管理的另一台主机。我已经在这台主机上设置了 apache,使用符号链接将其指向镜像目录。实际镜像数据约为 12-13 GB。基于此,14 GB 的数字似乎是正确的,并且 df 报告了额外的 9 GB。

这可能是什么原因造成的?

0 投票
2 回答
4369 浏览

bash - 格式化 du -sh 输出

我想自定义输出:

例如输出:

问题是我可以捕获第一列,但由于第二列可能包含空格,因此输出仅捕获第一个单词。有没有办法捕获包含的第二个列空间,或者可能返回该行的剩余内容?

以上返回:

编辑:解决方案是添加 -F 并指定制表符分隔符:

制表符也是文件/文件夹中的有效字符。就我而言,这永远不会成为问题。

0 投票
1 回答
1298 浏览

command-line - 如何使用 du 的 -I 选项忽略给定类型的所有文件?

您好,我正在运行 OS X。

我正在尝试使用 du 和 -I 选项来忽略给定类型的所有文件。我诉诸 -I 因为 OS X du 不包括“排除”选项。

本质上,我试图找到与此命令等效的 OS X:

du -ah --exclude="*.txt" /目录/文件夹