On Wed, Mar 24, 2010 at 4:48 AM, Roland RoLaNd r_o_l_a_n_d@hotmail.com wrote:
hello,
i've just wrote the following :
more ./*.csv | grep -i XXX | echo "Dear XXX, This email is for informative purposes. Your total number of hours for the week of `date` is: `cut -d, -f2` hours Kindly note that the average weekly working hours is : 40." | /usr/sbin/sendEmail -t mail@domain.com -u Test email- disregard it -f othermail@subdomain.com -s smtp.domain.com:25
this looks in a csv file that exists in the same directory for XX and outputs the field right next to it as you notice from : `cut -d, -f2`
It's working pretty fine for just one user, but i have to do the same for 432 person. and its obviously not as professional as it should be due to the following reasons:
- i have to fill the name for each person in place of XXX as well as their MAIL@domain.com
- the date command gives the hour as well which is a bit annoying
can anyone guide me on how to proceed? as you notice im a bit of a newbie with bash and im trying my best to improve my one liners/scripts
:D I had a similar assignment once.. The cleanest approach is to use awk instead of grep and cut. With awk you can specify fields in the input as $2, $3, etc..