|
From: | Joe Philip Ninan |
Subject: | [bug #48030] -exec + does not pass all arguments for ceratin specific filename lengths |
Date: | Thu, 26 May 2016 20:10:26 +0000 (UTC) |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:28.0) Gecko/20100101 Firefox/28.0 |
Follow-up Comment #1, bug #48030 (project findutils): Just to make sure this bug has nothing to do with any of the individual filenames, I tried it on generic filenames in such a way the total length of the arguments is same. # Following is how one can simply reproduce the bug ## First generate a very specific size sample directory ### Length of the filenames are crucial here $ mkdir RashuBug $ for i in $(seq -f "%04g" 901) ; do touch RashuBug/abcdefghijklmnopqrstuv$i ; done $ for i in $(seq -f "%04g" 902 3719) ; do touch RashuBug/abcdefghijklmnopqrstu$i ; done $ ls RashuBug/* | wc -l 3719 # Number of files we have created in directory ## Now create an echo command which is 6 characters long $ ln -s /bin/echo /bin/echooo # as root ## See the difference in the output of the following two commands $ find RashuBug -type f -exec echo {} + | tr ' ' 'n' | wc -l 3719 # Correct answer $ find RashuBug -type f -exec echooo {} + | tr ' ' 'n' | wc -l 3718 # Wrong answer (Last file went missing!) _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?48030> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/
[Prev in Thread] | Current Thread | [Next in Thread] |