tar only files that have a certain number in filename.

Hi all.

I'm not a pro yet with command line so i wanted to ask here incase i mess anything up with my centOS server.

I have a folder on my server that plesk puts its website backups in:

/var/lib/psa/dumps/

Within this folder it has loads of random backups and configs files along with a folder named domains that holds all the individual backups for each domain that plesk is hosting.

A backup is done weekly and the dumps just keeps storing more clutter.

every month i would like to download only the files that match the latest backup. (for safe keeping)

When a full server backup is done i can see its unique number inside the plesk dashboard. This number is also appended to the end of each backups file name.

So my thoughts are to copy all the files found in dumps/ and its subdirectories that have the unique number in the file names over to a .tar archive.

Then i can simply download the tar each time i need the latest backup.
I have searched online and found this command:
find ./ -type f -name "*.txt" -exec tar uvf myarchives.tar {} +

My unique number for the last backup is 1404190251
This is how all the files names are formed:
weeklyBackup_admin_angela_1_1404190251.tgz
weeklyBackup_angela-wright.com_apache-files_1404190251.tgz
weeklyBackup_angela-wright.com_info_1404190251.xml
and so on...

how can i modify the command so that it grabs these files with the number in the center of the filename as they all have different file extensions. Do i just add a * at the front and back like this?:
 "*1404190251*"

and will this command do a copy or will it remove the files after adding to the tar archive?
i would like to keep the old files in place if possible.

Thanks.
LVL 1
helpchrisplzAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Gerwin Jansen, EE MVEConnect With a Mentor Topic Advisor Commented:
>> and will this command do a copy or will it remove the files after adding to the tar archive?
The command will update an (existing) tar file. It will not remove the existing .tgz and xml files.

I suggest you create a new tar file instead, containing the same backup ID as your files have, you can then FTP/backup that file and after checking remove the files that were backed up. Otherwise you will keep on having lots and lots of files in the dumps folder.

I'd change the tar command like this:
find /var/lib/psa/dumps/ -type f -name "*1404190251*" -exec tar cvf 1404190251.tar {} +

Open in new window


If you want to see what the tar command would do without actually creating the tar file, add an 'echo' command, like this:
find /var/lib/psa/dumps/ -type f -name "*1404190251*" -exec echo tar cvf 1404190251.tar {} +

Open in new window


And if you don't want to type the name twice:
echo "Enter archive name: " ; read aname ; find /var/lib/psa/dumps/ -type f -name "*$aname*" -exec tar cvf "$aname".tar {} +

Open in new window

0
 
brendanmeyerConnect With a Mentor Commented:
adding the * should work

find ./ -type f -name "*1404190251*" -exec tar uvf myarchives.tar {} +
0
 
helpchrisplzAuthor Commented:
Hi brendanmeyer

where would the .tar file be created? the current folder?
0
 
brendanmeyerCommented:
yeah the current folder
0
 
helpchrisplzAuthor Commented:
ty
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.