Le 12/10/2022 à 12:55, Fergus Daly a écrit :
Requirement: to move some selected files and folders under /folder1/ to 
/folder2/, preserving full pathnames.

Using cp with the switch --parents (taking care over syntax and importantly 
location $PWD) it is possible to _copy_ the
Required content across from /folder1/ to /folder2/ but there does not seem to 
be a matching switch for mv that would
achieve the same purpose.

One solution would be (i) to copy the required content to /folder2/ and then 
(ii) delete the identical content under /folder1/;
but this is expensive (one might not even have the disk space to do it) and it 
seems seriously unsatisfactory and not without risk
to have to copy folders and files (possibly huge) when all one wants to do is 
to change the {pathname} to them.

Question 1
Would the command (or something like it, again with care over syntax and $PWD)
$ rsync -axuv --progress {pathto}/folder1/{content} {pathto}/folder2/
do the trick? Or is the very existence of the switch
$ rsync -axuv --remove-source-files --progress {pathto}/folder1/{content} 
{pathto}/folder2/
indicative that here too the "move" is achieved through a two-stage 
"copy-then-delete" operation?

Question 2
If rsync can provide a genuine "move" capability then is installing the rsync 
package adequate to the purpose;
or would librsync-devel and/or librsync2 packages need to be installed also?

Question 3
If not rsync, is there any operation for which "move" can be achieved without involving 
"copy-then-delete"?

Thank you for any assistance.



Hi,

how about find /source | cpio -pdml /target
alternative, cp -alu --parent /source /target
then purge /source

Regards,

/me
--
mailto:cyrille.lefevre-li...@laposte.net


--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to