LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Compress folders every 6 months (https://www.linuxquestions.org/questions/linux-newbie-8/compress-folders-every-6-months-4175597217/)

trickydba 01-11-2017 07:24 AM

Compress folders every 6 months
 
I generate a folder everyday consisting of different reports. I would like to compress these folders(named 0101207,01022017,etc etc) every six months. So folders named 01012017 to 06312017 would be compressed to a folder named 'Jan2017_Jun2017'. Then of course folders starting on 07012017 to 12312017 would be compressed in a folder named 'July2017_Dec2017. These folders are on a Windows shared folder. It would be ok for this automated tasks to be installed and ran from my laptop, but if it can be ran via CRON job that would be ok too, whichever is easier. Is this possible? Any help is highly appreciated

jamison20000e 01-11-2017 07:29 AM

Code:

sudo crontab -e
was my first thought...

trickydba 01-11-2017 07:43 AM

I'm not allowed to use this program, and it takes too long and I have to go through too much to get permission to run certain commands. I guess it would be better for it to run from my laptop.

jamison20000e 01-11-2017 07:48 AM

Is it Linux on your laptop because that's how to setup a CRON job (IMHO the easy way...)

trickydba 01-11-2017 08:38 AM

No, unfortunately it's Windoze(YUCK).

rtmistler 01-11-2017 08:49 AM

@trickydba, unfortunately this is not a Windows forum.

Is Linux involved here at any point? You cited cron and then you said you can't use it due to Windows.

If you wish automated tools for Windows, then please seek an alternate forum on LQ such as the Non-Nix-General forum, or give Stack Overflow a try.

As far as Linux goes, people can offer some suggestions; however you need to cite your topology of systems, tell us where Linux is being used, or is capable of being installed, or allowed to be installed, and then people can offer some solutions here.

trickydba 01-11-2017 12:15 PM

Well I just recently found out since creating this thread that I cannot create a cron job. I apologize. I guess at this point I would like to have a script that I can execute MANUALLY that can resolve my issue

273 01-11-2017 12:20 PM

Isn't this a political issue rather than a technical one?
If you're employed as a DBA and expected to back up then you need cron -- if your employer says otherwise get it in writing they don't want a backup and forget about it (whilst looking for a new job in case the imbeciles take the company down).

trickydba 01-11-2017 01:08 PM

Well the work I do is dba plus more but I just chose to have it a part of my user name just because it was the 1st thing that came to my mind

273 01-11-2017 01:10 PM

Quote:

Originally Posted by trickydba (Post 5653481)
Well the work I do is dba plus more but I just chose to have it a part of my user name just because it was the 1st thing that came to my mind

Regardless of your job title: if your employer prohibits you from doing you job then document it and move on.

trickydba 01-11-2017 01:23 PM

I understand.........still at this time I humbly ask for assistance with my issue. Is it possible in a script I can run every 6 months manually? I figure I can get the script 1st then request for the access to create a cron task. Either way, I would still need help

schneidz 01-11-2017 02:01 PM

Quote:

Originally Posted by trickydba (Post 5653316)
I generate a folder everyday consisting of different reports. I would like to compress these folders(named 0101207,01022017,etc etc) every six months. So folders named 01012017 to 06312017 would be compressed to a folder named 'Jan2017_Jun2017'. Then of course folders starting on 07012017 to 12312017 would be compressed in a folder named 'July2017_Dec2017. These folders are on a Windows shared folder. It would be ok for this automated tasks to be installed and ran from my laptop, but if it can be ran via CRON job that would be ok too, whichever is easier. Is this possible? Any help is highly appreciated

mite i suggest using better file names so that they sort better. something like year--month--date or year--day-of-year.

the script would probably call for things like tar:
Code:

tar -cvjf 2017.5.tar.bz2 /path/to/files
what have you tried so far ?

trickydba 01-11-2017 02:46 PM

I was thinking this might work, from an older thread:
Code:


 find . -name '*.DAT' -mtime -182 | xargs  tar -czvf  Jan2017Jun2017.tar.gz

I don't know if this is right but I wish it to be more dynamic in that maybe a requester pops up asking whether the save is for Jan to Jun or July to Dec. I came up with this code so far using Whiptail:
Code:

#!/bin/bash
OPTION=$(whiptail --title "Folder Compressor - By Me" --menu "Choose your date range to compress" 15 60 4 \
"1" "January to June" \
"2" "July to December"  3>&1 1>&2 2>&3)

exitstatus=$?
if [ $exitstatus = 0 ]; then
    echo "Your chosen option:" $OPTION
else
    echo "You chose Cancel."
fi

Now I would like for it to operate like this:
If I choose number 1, it will run my code(if it's right) and create the compressed filename 'JanJun2017', appending the year
If I choose number 2, it will run my code and create a compressed file 'JulyDecember2017' appending the year
showing a progress bar, then when done it shows "Compression successful!" and exits.

I know Whiptail has a 'gauge' function that displays a progress bar

rtmistler 01-11-2017 04:33 PM

What you just wrote is what I was going to suggest. To use find and tar.

I do not feel you need to use a script.

jefro 01-11-2017 04:54 PM

Notes.

I know this isn't the question asked but if I wanted to store data on a windows machine then I'd use windows folder compression tools to save data and make the information seamlessly available to all resources.

However many linux programs might be ran from limited user permissions. Tar and many other programs could be used and piped to some compression and some have switches that make renaming rather easy. Kind of the issue is how much permissions do you have in linux. Simple tar may not be allowed. You could even have some higher permissions that allow distro based programs to be run.


All times are GMT -5. The time now is 04:28 AM.