Task: Need to write a unix/linux shell script which moves Files from One Folder to Another Folder once a day (Say at midnight). Also set permissions for newly moved files accordingly.
Step 1: Write a Shell Script to do moving and set permissions
#!/bin/sh
mv /home/a/* /home/b/
chown nobody:nobody /home/b/*
Here I want to move files from “/home/a/” to “/home/b” and set permissions to nobody so that PHP running on Apache can do work on them. I saved the script as “/home/myscript.sh”
Step 2: Make the script an Executable
$ chmod +x myscript.sh
Step 3: Run at mid night every day by adding to Cron Job
a) Edit Current Cronjob
$ crontab -e
Then add your script entry there (works same as VI editor.. use i to go to edit mode). I am actually setting at 11.59 PM..
59 23 * * * /home/myscript.sh
b) Save cron job by exiting (using Shift+zz)
c) Check to see cron job is set
$ crontab -l
That’s It!