GNU bug report logs - #21094
cp: add option to sort when copying

Previous Next

Package: coreutils;

Reported by: "Steve Russell" <steve.russell2 <at> mail.com>

Date: Mon, 20 Jul 2015 00:18:02 UTC

Severity: wishlist

Tags: wontfix

Done: Assaf Gordon <assafgordon <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


Message #11 received at 21094 <at> debbugs.gnu.org (full text, mbox):

From: Pádraig Brady <P <at> draigBrady.com>
To: Steve Russell <steve.russell2 <at> mail.com>, 21094 <at> debbugs.gnu.org
Subject: Re: bug#21094: cp: add option to sort when copying
Date: Mon, 20 Jul 2015 14:46:59 +0100
On 20/07/15 01:34, Pádraig Brady wrote:
> On 19/07/15 07:09, Steve Russell wrote:
>> When performing a recursive copy of a large number of files it would be helpful to have an option to copy the files in each directory in sorted order of the file names. There are a couple of use cases for this.
>>  
>> The first is to be able to easily observe the progress of the copy using the -v option. Currently, the "random" order of the copy means I can not tell how far the copy has progressed. On occasions I have seen cp -v display a top level directory starting with 'z' and assumed the copy was almost done only to see it start copying files from another directory earlier in the alphabet.
>>  
>> The second use case is sometimes I would like to start working with the destination files before the copy has completed. For example if I see the destination has the top level directory "foo", an ordered copy means I can work with directories that are alphabetically before "foo" knowing that they will not change.
>>
>> Another minor use case is some mp3 players ignore the file names and metadata and always play tracks in the order they appear in the directory. Usually the filesystems used by these players will order directories in the same order files are added. For content like eBooks where track order is critical, a sorted copy would be a useful workaround for the limitations of these players.
> 
> Thanks for the suggestion.
> 
> The implementation would be quite simple given that we already
> sort directory entries by inode number to improve performance
> (though note that that performance enhancement may not be
> effective going forward with newer file systems and SSDs).
> 
> The implementation would leverage gnulib's SAVEDIR_SORT_NAME functionality.
> 
> The interface would probably mirror tar's --sort option.
> 
> I'm 55:45 for exposing this option to cp, install and maybe mv.

Upon consideration I'm down to 50:50.

For the progress use case, one can use rsync,
or perhaps an explicit progress option in cp.

For the mp3 order case, one can use tar --sort
to do the transfer.

thanks,
Pádraig.





This bug report was last modified 6 years and 206 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.