coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Move Command Feature


From: Michael Boldischar
Subject: Re: Move Command Feature
Date: Fri, 5 Apr 2013 12:56:42 -0500

Eric,

Thanks for the quick response.  I'll continue to investigate rsync.  The move command is for moving files.  In my opinion, having a safe flag in there fits the function of the command.

My first attempt with rsync resulted in the same problem I have when there are errors using the "mv" command:
$ mkdir a b
$ touch a/1.txt a/2.txt
$ chmod 000 a/2.txt
$rsync -r --remove-source-files a/ b/
rsync: send_files failed to open "/tmp/test/a/2.txt": Permission denied (13)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1070) [sender=3.0.8]
$ ls b
1.txt
$ ls a
2.txt

The "a" directory was partially moved.  This is no big deal with a small set of files, but a large set becomes a headache.

Mike

On Fri, Apr 5, 2013 at 12:42 PM, Eric Blake <address@hidden> wrote:
On 04/05/2013 11:23 AM, Michael Boldischar wrote:
> Hello,
>
> This is a suggestion for a new feature in the "mv" command.  This feature
> applies to moving directories.  If a user moves a directory with a lot of
> files and encounters an error, it can often leave the source directory in a
> partially moved state.  It makes it hard to redo the operation because the
> source directory has changed.
>
> The feature I'm looking for is a flag in the "mv" command that preserves a
> copy of the source directory until the entire tree has been successfully
> copied to the destination directory.  At that point, the move command can
> delete the source directory.  That way, a user can fix the error and rerun
> the same move command.  It makes it easier and less of a headache.
>
> There might be other ways to accomplish this.  But, I would use this
> feature all the time if it were available.  I call it the "safe move
> operation."

This sounds like something that rsync can already do.  In that case,
rather than wait for someone to write the feature into mv (and
successfully argue that it is not adding bloat), and then for that
feature to finally propagate into the distros that you commonly use; it
would be easier to figure out the appropriate rsync
--remove-source-files invocation that does what you want.

--
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org




--

Michael Boldischar
Research Fellow / IT Manager
University of Minnesota
Department of Civil Engineering

MAST Laboratory
University of Minnesota
2525 4th Street SE
Minneapolis, MN 55455

Desk Phone: 612-626-9562
Cellphone: 651-387-0223
Fax: 612-624-5964
Email: address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]