Dear all,
I have written a small script which will send me mail on status of server.
I have tested it working fine. I am facing only with message subject

The last part of my script is as below,

cat dailystatus.txt| mail -s "Daily Server Status Report-$yr-$mm-$dd" root@ecms.co.in

The script run perfectly . The variable yr, mm. dd are defined and that is not a problem I have tested it too. But when I receive the mail , I got the subject heading as "Daily Server Status Report-$yr-$mm-$dd" . The variable are not getting replaced by the values,
So I feel that it may not be allowed to put variables with mail command.

Is there is any way so that subject can be read from file. Or any other idea on this.
Thanks
Vinod

Recommended Answers

All 4 Replies

cat dailystatus.txt| mail -s "Daily Server Status Report-${yr}-${mm}-${dd}" root@ecms.co.in

it should not matter if you put $yr or ${yr}. Show your entire code that defined the variables..

it should not matter if you put $yr or ${yr}.

Maybe not, but it is still a good practice to get into, especially when using variables mixed in with other characters where the variable does not have whitespace on both sides. But, considering that he is actually getting "-$yr-" (which is the first variable) tells me that the script is not recognizing those "strings" as variables, at all, which the braces can help with.

Edit: If it were that the variables were defined wrong, he would probably wind up with "Report---".

Thanks all,
It works with ${yr} i.e. putting variables in curly braces.
vinod

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.