GNU bug report logs -
#7439
du failing at "du -sh . *"
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Fri, 19 Nov 2010 08:52:39 -0800
with message-id <4CE6AB57.8040003 <at> cs.ucla.edu>
and subject line Re: bug#7439: du failing at "du -sh . *"
has caused the GNU bug report #7439,
regarding du failing at "du -sh . *"
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
7439: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7439
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Hey there,
I don't know for sure if this is a bug in 'du' or not - but I've
requested several people to test it and we all get the same results:
$ mkdir du_test
$ cd du_test/
$ touch a b c d
$ echo "11111111" >e
$ du -sh . *
8,0K .
$ du -sh * .
0 a
0 b
0 c
0 d
4,0K e
4,0K .
$
So not only the output of "du -sh . *" is wrong (not showing du for *),
but also the output of "du -sh * ." is incorrect (showing only 4K
instead of 8K for ".").
I use bash as my shell, but this also happens with sh, zsh, and several
other shells i've tried so far.
the version of coreutils I run is:
$ du --version
du (GNU coreutils) 8.7
Copyright © 2010 Free Software Foundation, Inc.
We've found out that the behaviour of du from coreutils 8.6 and below is
as expected:
$ mkdir du_test
$ cd du_test/
$ touch a b c d
$ echo "11111111" >e
$ du -sh . *
8,0K .
0 a
0 b
0 c
0 d
4,0K e
$ du -sh * .
0 a
0 b
0 c
0 d
4,0K e
8,0K .
$
I'm using ArchLinux with kernel 2.6.35-ARCH #1 SMP (x86_64). Filesystem
is ext4. The bug also is present on ext3, btrfs and ext2 filesystems (I
don't know if this might be of any relevance).
Please feel free to respond if you should have any further questions.
Cheers
Mathias Linnemann-Emden
[Message part 3 (message/rfc822, inline)]
On 11/18/2010 05:08 PM, Mathias Linnemann-Emden wrote:
> So not only the output of "du -sh . *" is wrong (not showing du for *),
> but also the output of "du -sh * ." is incorrect (showing only 4K
> instead of 8K for ".").
NEWS lists this as a bug fix in release 8.6:
du no longer multiply counts a file that is a directory or whose
link count is 1, even if the file is reached multiple times by
following symlinks or via multiple arguments.
The idea is that a single invocation of du never counts the same
file twice. This was always true for files with multiple hard
links (you probably didn't notice that), and now it's consistent
for all files.
To get something like the old behavior, you can use "du -l",
or invoke "du" separately for each file (depending on how you
want hard links treated).
This bug report was last modified 14 years and 190 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.