Visit Our UNIX and Linux User Community


Redirect script output to a file and mail the output


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Redirect script output to a file and mail the output
# 1  
Old 09-10-2013
Redirect script output to a file and mail the output

Hi Guys,

I want to redirect the output of 3 scripts to a file and then mail the output of those three scripts.
I used below but it is not working:

Code:
 
OFILE=/home/home1/report1
 
echo "report1 details" > $OFILE
=/home/home1/1.sh > $OFILE
echo "========================================================================================================================================" > $OFILE
echo "report2 details" > $OFILE
=/home/home1/2.sh > $OFILE
echo "========================================================================================================================================" > $OFILE
echo "report3 details" > $OFILE
/home/home1/3.sh > $OFILE
echo "========================================================================================================================================" > $OFILE
cat $OFILE | mail -s "Verification" abc@gmail.com

i am just getting the output of three scrips separately meaning individual scripts are ruuning but not getting the output in one mail as below.

Code:
 
OUTPUT should be as below:
 
report1 details
The total no of difference in previous day report and current day report is 0 records
 
 
========================================================================================================================================"
 
report2 details:
The total no of difference in previous day report and current day report is 1 records
 
 
========================================================================================================================================"
 
report3 details:
The total no of difference in previous day report and current day report is 1 records


# 2  
Old 09-10-2013
Hello,

It will not put that data from file named
Code:
 OFILE

in your code.

As command
Code:
 mailx

is coming at last and you are not concating the data into the file you are just overwriting the data by doing
Code:
> $OFILE

to it.


Please use
Code:
 =/home/home1/1.sh >> $OFILE

to save it from overwriting and use it then.



Thanks,
R. Singh
# 3  
Old 09-10-2013
using home/home1/1.sh >> $OFILE is also not working..
I am getting completely blank mail with subject line Verification.
Not even echo is working..
As soon as i run the script i get three emails giving the output of 3 script because i have use mail command in those scripts also and 4th mail gwenerated blank email with subject line only.

---------- Post updated at 03:50 PM ---------- Previous update was at 03:38 PM ----------

I just want to get the output of 3 scripts in one mail.
# 4  
Old 09-10-2013
What is this: =/home/home1/1.sh?
Try
Code:
echo "report1 details" > $OFILE 
/home/home1/1.sh >> $OFILE 
echo "========================================================================================================================================" >> $OFILE 
echo "report2 details" >> $OFILE 
/home/home1/2.sh >> $OFILE 
echo "========================================================================================================================================" >> $OFILE 
echo "report3 details" >> $OFILE 
/home/home1/3.sh >> $OFILE 
echo "========================================================================================================================================" >> $OFILE 
cat $OFILE | mail -s "Verification" abc@gmail.com

# 5  
Old 09-10-2013
Or use a grouping command and avoid creating a temporary file:
Code:
{
echo "report1 details"
/home/home1/1.sh
echo "========================================================================================================================================"
echo "report2 details"
/home/home1/2.sh
echo "========================================================================================================================================"
echo "report3 details"
/home/home1/3.sh
echo "========================================================================================================================================"
} | mail -s "Verification" abc@gmail.com

# 6  
Old 09-10-2013
The problem is /home/home1/2.sh >> $OFILE is not working.
Script 2.sh output should be redirected to $OFILE which is not happening.
When i am running the command
Code:
./2.sh>>filename

it is not working.
Inside 2.sh script I am redirecting the output of this script to a filename1 and then mailing the output.
# 7  
Old 09-10-2013
That statement of yours is a bit difficult to believe. Why should a plain redirection stop working? What's your shell/system?

Previous Thread | Next Thread
Test Your Knowledge in Computers #118
Difficulty: Easy
A Unix-like OS is the one that works like Unix systems, however, Unix-like system do not necessarily conform to the Single UNIX Specification (SUS) or POSIX (Portable Operating System Interface) standards.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Redirect script output to file after grep

i have simple program that generate log file 1 line every sec, i need to do grep for specific record then redirect to another file. #!/bin/bash for i in `seq 1 20`; do echo $i sleep 1 done ./test.sh |egrep "5|10|15" 5 10 15 r ./test.sh... (2 Replies)
Discussion started by: before4
2 Replies

2. Programming

How to redirect the output of a shell script to a file?

hi, i have a html form which call a perl program, this perl program calls a shell script. <html> <head> <title>demo</title> </head> <body> <form name="frm1" action="/cgi-bin/perl_script.pl" method="post"> <input type="text" name="fname"> ... (1 Reply)
Discussion started by: Little
1 Replies

3. Shell Programming and Scripting

Redirect an output from a script to a file and display it at a console simultaneously

Hi, I'd like to redirect the STDOUT output from my script to a file and simultaneously display it at a console. I've tried this command: myscript.sh | tail -f However, it doesn't end after the script finishes running I've also tried this: myscript.sh | tee ~/results.txt But it writes... (3 Replies)
Discussion started by: wenclu
3 Replies

4. Shell Programming and Scripting

script to mail monitoring output if required or redirect output to log file

Below script perfectly works, giving below mail output. BUT, I want to make the script mail only if there are any D-Defined/T-Transition/B-Broken State WPARs and also to copy the output generated during monitoring to a temporary log file, which gets cleaned up every week. Need suggestions. ... (4 Replies)
Discussion started by: aix_admin_007
4 Replies

5. Shell Programming and Scripting

Redirect bg process output to within the script

Hi, I have a process running in the background, which throws up some output to the terminal when I run my script. How can I read this output from my script? Thank you. (5 Replies)
Discussion started by: Theju
5 Replies

6. Shell Programming and Scripting

how to redirect the output of a grep command to a file inside a shell script

hi, i wat to get the output of a grep command in a file. but when i am trying out the same grep command in the unix prompt its working fine.. i am getting the output properly.. but when i am writing the same command inside my shell script , its just creating a new output file with no contents... (11 Replies)
Discussion started by: kripssmart
11 Replies

7. Shell Programming and Scripting

Cronjob - Redirect mail output to file, LINES & COLUMNS

I currently have an expect script that issues the 'mail' command and sends an 'x' when it receives the & prompt from mail to quit. The expect script is able to do stty rows 100 columns 200 < $spawn_out(slave,name) to set up the number of columns and rows. I would like to get rid of the expect... (0 Replies)
Discussion started by: jharvey
0 Replies

8. Shell Programming and Scripting

redirect only the standard error output to mail

I'm writing a script using file descriptor 2 (std error) to send an email only if the command fails or errors out but the script always emails me irrepective of whether it fails or not. It will not email the /tmp/check.error file output if doesn't error out just the mail with the subject "Cannot... (3 Replies)
Discussion started by: barkath
3 Replies

9. UNIX for Dummies Questions & Answers

Redirect output to a file

Ahhhrrrggg I'm having a brain fart... I want to take the output of a command and redirect it to a file... This works.... $ man cp | cat >> copy_help but this doesn't keytool -help |cat >> keytool_help It just produces... these lines... more keytool_help ] ... ... (11 Replies)
Discussion started by: jimmyc
11 Replies

10. Shell Programming and Scripting

redirect output to file?

Hi: I am currently working on a program which requires direct its ouput to a file here is an example ./proram arg_1 arg_2 when program ends all output will be arg_2 file Is that possible I am not a bad programmer, However I am stuck there. Can anyone give a hint? Thanks SW (1 Reply)
Discussion started by: slackware
1 Replies

Featured Tech Videos