What about an if-then statement in the script, like so:
for f in *.*;
do
If exist /path to destination folder/$F [File in question] then
diff $F /path to destination/$f and check which way the pipe points.
if pipe points left (indicating destination file is newer, larger, etc
than original file
bypass $F
Else cp $F to /path to destination/$F
:done
Now, the above looks strange, but it’s my methodology for writing actual bash
scripts. Firstly, define the problem in plain English, then look up the
appropriate commands and actions. It’s very basic, but it does allow me to
codify my thought processes.
Do with it what you will.
-Eric
From the Central Offices of the Technomage Guild, Software maintenance
infrastructure Dept.
On Jul 5, 2025, at 9:15 AM, Arun Khan via PLUG-discuss
<[email protected]> wrote:
On Sat, Jul 5, 2025 at 8:53 AM Michael via PLUG-discuss
<[email protected] <mailto:[email protected]>>
wrote:
Simple question: How does one copy all files except those exiting already?
---------------------------------------------------
IMO, rsync is better for your objective. It does a file by file comparison and
copies only that have changed or do not exist in the dest dir.
rsync -aP --log-file=/var/tmp/rsync-$$.log <origin dir> <dest dir>
--
Arun Khan
---------------------------------------------------
PLUG-discuss mailing list: [email protected]
To subscribe, unsubscribe, or to change your mail settings:
https://lists.phxlinux.org/mailman/listinfo/plug-discuss
---------------------------------------------------
PLUG-discuss mailing list: [email protected]
To subscribe, unsubscribe, or to change your mail settings:
https://lists.phxlinux.org/mailman/listinfo/plug-discuss