Compare file dates before copy


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Compare file dates before copy
# 15  
Old 08-09-2018
rsync is a good way to make backups.

There are 100s of ways to do things on Linux, so always do what you like.

However, when I rsync backups, for example database dump backups, I keep the file names in each file:

Code:
-rw-r--r-- 1 root root 409715952 Jun  1 22:30 main_masterdump_2018-06-01-22.sql.gz
-rw-r--r-- 1 root root 409688854 Jun  2 22:30 main_masterdump_2018-06-02-22.sql.gz
-rw-r--r-- 1 root root 409982101 Jun  3 22:30 main_masterdump_2018-06-03-22.sql.gz
-rw-r--r-- 1 root root 409919476 Jun  4 22:30 main_masterdump_2018-06-04-22.sql.gz
-rw-r--r-- 1 root root 409866365 Jun  5 22:30 main_masterdump_2018-06-05-22.sql.gz
-rw-r--r-- 1 root root 409877826 Jun  6 22:30 main_masterdump_2018-06-06-22.sql.gz
-rw-r--r-- 1 root root 409882688 Jun  7 22:30 main_masterdump_2018-06-07-22.sql.gz
-rw-r--r-- 1 root root 410654112 Jun  8 22:30 main_masterdump_2018-06-08-22.sql.gz
-rw-r--r-- 1 root root 411599782 Jun  9 22:30 main_masterdump_2018-06-09-22.sql.gz
-rw-r--r-- 1 root root 412574869 Jun 10 22:30 main_masterdump_2018-06-10-22.sql.gz
-rw-r--r-- 1 root root 414508311 Jun 11 22:30 main_masterdump_2018-06-11-22.sql.gz
-rw-r--r-- 1 root root 410308454 Jun 12 22:30 main_masterdump_2018-06-12-22.sql.gz

You will be a wiser sys admin to include dates in your filenames.
# 16  
Old 08-09-2018
I am a normal user, not a sys admin.

But if my filenames have the date in them, won't I accumulate a lot of files?

I tried this, but it made a ton of files which quickly filled up a directory.

Code:
cp --backup=numbered afile /path/to/dest

# 17  
Old 08-09-2018
Yes, because it will not overwrite the old backup.

That is a "good thing" because you don't want to automatically overwrite your backups.

The purpose of having backups is to have a lot of them incase there was a problem.

For example.

Let's say that in two weeks time, you discover a criminal hacked into your system a week ago and did some bad things.

If you only have the latest backup, two weeks from now, you will certainly not have the backup from three weeks ago (from two weeks in the future).

So, if you want to be safe and take care of your users and user data, you must have backups going back ... a long way... depending on how critical your data is.

Then, as a good sys admin, you delete your very old backups (manually is best) when you are confident you don't need them.

That's how it is done.

Otherwise, you will f*ed very much when you discover in a month someone hacked you two weeks ago from today Smilie
# 18  
Old 08-09-2018
Ok. But I will need more help in putting file dates into my file names.

Bash is very featured filled.

Much more so than batch files I used in WIndows.
# 19  
Old 08-09-2018
You need a command substitution, either ` ` (backticks) or $( )
Store it in a variable like this
Code:
date=$(date +%Y-%m-%d)

Then insert $date where you need it.

Last edited by MadeInGermany; 08-09-2018 at 03:39 PM.. Reason: + was missing
# 20  
Old 08-09-2018
Code:
cp Ubuntu_Documents.zip /media/andy/MAXTOR_SDB1/Ubuntu_Mate_18.04/Ubuntu_Documents.zip_`date +%d%b%Y_%H_%M`

Code:
Ubuntu_Documents.zip_09Aug2018_12_00

# 21  
Old 08-09-2018
You need to put the date before the file extension:

Like this:

Code:
Ubuntu_Documents_DATE_TIME.zip

.. not on the end of the file extension.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Compare file size and then copy/overwrite

// Redhat I have this code working, but need to add one more qualification so that I don't overwrite the files. #!/bin/sh cd /P2/log/cerner_prod/millennium/archive/ for f in * do || continue #If this isn't a regular file, skip it. && continue #If a backup already... (2 Replies)
Discussion started by: Daniel Gate
2 Replies

2. Shell Programming and Scripting

Compare File & Copy Replace if Successful

Hi All, I have written a shell script that creates a backup of my MySQL database. The script performs the following functions: Creates a Backup of the MySQL database Compresses the Backup Copies the Backup to a Remote Server Send an E-Mail displaying the size of the Backup Removes any... (6 Replies)
Discussion started by: SalientAnimal
6 Replies

3. Shell Programming and Scripting

ksh compare dates INSIDE a file (ie date A is > date B)

In KSH, I am pasting 2 almost identical files together and each one has a date and time on each line. I need to determine if the first instance of the date/time is greater than the 2nd instance of the date/time. If the first instance is greater, I just need to echo that line. I thought I would... (4 Replies)
Discussion started by: right_coaster
4 Replies

4. Shell Programming and Scripting

Compare Dates.

Hi All, I am entering StartDate and EndDate as parameters to script. Want to have an check saying, "If StartDate is greater than EndDate then don't execute the script". Pseudo Code: if then Execute script else exit 0 fi Can you please help me on the same? Thanks and... (4 Replies)
Discussion started by: Nagaraja Akkiva
4 Replies

5. Shell Programming and Scripting

The Best Way to Compare Dates

Hi to all. When you have to compare a lot of dates in a SH code, there is a way to directly compare? For example, how can I check if two dates differ in less than a week? Thank's for reading. (2 Replies)
Discussion started by: daniel.gbaena
2 Replies

6. Shell Programming and Scripting

Compare dates

Need to find all records where date in one filed is greater than date in other. Input: ABC 2 Filed3 CDG * X 20080903 20081031 180.00 ABD 2 Filed3 CDG * X 20081101 20081031 190.00 ABE 2 Filed3 CDG * X 20090903 20081031 120.00 ABC 2 Filed3 CDG * X 20080903 20081015 130.00 Output: ... (2 Replies)
Discussion started by: necroman08
2 Replies

7. Shell Programming and Scripting

PERL - copy fiel contents to array then compare against other file

Basically to illuminate i want to take a file with mutliple lines, C:\searching4theseletters.txt a b c Read this into an array @ARRAY and then use this to compare against another file C:\inputletters.txt b o a c n a (9 Replies)
Discussion started by: bradleykins
9 Replies

8. Shell Programming and Scripting

How to compare the dates..

Hi all, I've written a script which gives the below information... End Date&Time: 2008-10-21 10.54.37 Now i want to calculate this time with the current time.. and if its more than 48 hours past with the current time it should echo "48 Hours back" Please help me.. thanks in... (4 Replies)
Discussion started by: suri.tyson
4 Replies

9. Programming

How to compare dates in C/C++

Hi, Is there any system defined function to compare two dates in C/C++? Thanks (1 Reply)
Discussion started by: naan
1 Replies

10. Shell Programming and Scripting

compare two dates

I have a log file with date format like 10-Oct-02 13:20:29 ..... at the beginning of each line in the log file, and I need to grep data from this file to list the lines with date no longer than one days. I tried to use awk to do this but it looks very complicated to do it. Is there... (6 Replies)
Discussion started by: wchen
6 Replies
Login or Register to Ask a Question