Grep is a useful command in Linux to filter desired strings or values or to match string pattern.
Type: "man Grep" on Linux terminal window to dig more about Grep command.
Script below is a simple way on how Grep can be used on a script.
Script also shows and performs basic calculation to get desired number of days.
Ls command in Linux is to list directory contents.
If dealing with a large or huge data, Ls alone can't be a handy tool.
So "Ls" command combined with "Grep" can be a good handy tool.
For more complex scenario "RegEx" will come into play, but "RegEx" will be too much for a newbie.
So mileage may vary using "RegEx".
So it's better to start with Grep and get a hang of it and move to "RegEx" to gain more.
Script below, will list files on a directory.
All files on a directory which has a time stamp of yesterday's date from the current date.
xMinus variable can be adjusted or set, so if it is set to "2". It will list files which has a time stamp 2 days earlier from current date.
Here's the simple bash script:
================================
#!/bin/sh
getDate="$(date +"%d")"
getMonth="$(date +"%b")"
#Will display the date and month; result of above commands
echo $getDate
echo $getMonth
xMinus=1
# $((calculation variables)) surround the arithmetic operation with $((calculate here))
# 10# tell bash to treat the variable as numeric
# since value of xMinus is set to 1 will get yesterday's date from today's date
$xbackupDate=$((10#$getDate-10#$xMinus))
if [ "$getDate" -le "9" ]; then
#space is the trick here
#Linux will have single space in between Month and Day if the date is less than 9
xDgrep="$getMonth $xbackupDate"
elif [ "$getDate" -ge "10" ]; then
#Linux will have two spaces in between Month and Day if the date is greater than 9
xDgrep="$getMonth $xbackupDate"
fi
for f in $(ls -l /home/mybackupFiles/NASBak | grep "$xDgrep" )
do
# redirect read files
echo $f >> "xFiles.txt"
# or do a cp command to copy files or whatever process desired
done
To dig more about Linux "Grep", this one is a great site:
http://www.cyberciti.biz/faq/howto-use-grep-command-in-linux-unix/
Cheers till next time!!
Comments
Post a Comment