You can stream the whole thing directly into an email if you play about with sockets (which I'm cr@p at in shell so I won't try and show you how), but otherwise you can go with your idea of using a temporary file like so:
Code:
#!/bin/ksh
sendmail="/usr/lib/sendmail"
recipient="recipient@there.com"
sender="me@here.com"
tempfile="/tmp/mailthingy.$$"
print "To: $recipient" > $tempfile
print "From: $sender" >> $tempfile
print "Subject: some stuff\n" >> $tempfile
print "AL" >> $tempfile
print "AM" >> $tempfile
print "AN" >> $tempfile
print "RL\n" >> $tempfile
nawk '/PROD/ {print $3, $2}' /home/user/switch_listtest | sort -k1,2 >> $tempfile
print "End of Report" >> $tempfile
if cat $tempfile | $sendmail $recipient
then
print "Ok"
rm -f $tempfile
exit 0
else
print "Barf!"
print "Tried to send the message contained in the following file to $recipient but failed:"
print "$tempfile"
exit 1
fi
Is there any way to combine the following two statements into one? I can't figure out how to get expr to take input from the output of the awk call - I've tried piping the output of the awk call into the expr call, and tried using a 'Here' document, nothing seems to work.
export CNT=`wc -l... (4 Replies)
Hi,
I have a script to compare 2 files.
file1=$1
file2=$2
num_of_records_file1=`awk ' END { print NR } ' $file1`
num_of_records_file2=`awk ' END { print NR } ' $file2`
i=1
while
do
sed -n "$i"p $file1 > file1_temp
sed -n "$i"p $file2 > file2_temp
diff file1_temp... (5 Replies)
I can run this from the command line:
scp -i identfile /path/file_to_send remotelogin@remotebox:/path_to_put_it/file_to_send
and I get:
file_to_send 100% |***************************************************************************| 0 00:00
but if I do:
scp -i identfile... (6 Replies)
Hi All,
I am a newbee in unix but still have written a shell script which should trigger a mail based on certain conditions but the problem is that my file is not being read. Below is the code please advise. I do not know where is it failing.
Note $ and the no followed with it is the no of... (1 Reply)
I need to reconfigure Sendmail to strip the SMTP email addresses from all email and replace them with a single address used for testing purposes.
I have a vended application hosted on Solaris 10 servers. I have access to support the application framework (IBM WebShere Application Server 6.1),... (1 Reply)
Hi guys,
been scratching round the forums and my mountain of resources.
Maybe I havn't read deep enough
My question is not how sed edits a stream and outputs it to a file, rather something like this below:
I have a .txt with some text in it :rolleyes:
abc:123:xyz
123:abc:987... (7 Replies)
Hi, i'm trying to gather details from remote hosts and want them to be written to my local linux machine from where i'm using SSH. My command looks some thing like this
ssh -q remotehost 'bash -s' <command.txt
where command.txt is a file in my local machine containing
ps -ef |grep httpd |... (1 Reply)
Hi,
I am working on Sun Solaris 5.10 and want to direct the output from a disk space check script to an output file;
#!/bin/bash
CURRENT=$(df -k /log/logs | grep /log/logs | awk '{ print $5}' | sed 's/%//g')
THRESHOLD=30
if ; then
echo "Remaining free space is low" > output.txt
else... (10 Replies)
I have a shell script that runs on our webserver logs, and grabs various useful data and then outputs this data to a .csv file.
What I want to do now is schedule a cronjob to run this script for me each week at a designated time, AND email the .csv file that is created as an attachment to... (1 Reply)
Hello all,
i have a code in which when doing a for loop, i need to direct the output to two files, one just a single output, the other to always append (historical reasons).
So far i managed to do the following, which is working, but am still considering it as "dirty".
... (4 Replies)
Discussion started by: nms
4 Replies
LEARN ABOUT LINUX
tempfile
TEMPFILE(1) General Commands Manual TEMPFILE(1)NAME
tempfile - create a temporary file in a safe manner
SYNOPSIS
tempfile [-d DIR] [-p STRING] [-s STRING] [-m MODE] [-n FILE] [--directory=DIR] [--prefix=STRING] [--suffix=STRING] [--mode=MODE]
[--name=FILE] [--help] [--version]
DESCRIPTION
tempfile creates a temporary file in a safe manner. It uses tempnam(3) to choose the name and opens it with O_RDWR | O_CREAT | O_EXCL.
The filename is printed on standard output. See tempnam(3) for the actual steps involved in directory selection.
The directory in which to create the file might be searched for in this order (but refer to tempnam(3) for authoritative answers):
a) In case the environment variable TMPDIR exists and contains the name of an appropriate directory, that is used.
b) Otherwise, if the --directory argument is specified and appropriate, it is used.
c) Otherwise, P_tmpdir (as defined in <stdio.h>) is used when appropriate.
d) Finally an implementation-defined directory (/tmp) may be used.
OPTIONS -d, --directory DIR
Place the file in DIR.
-m, --mode MODE
Open the file with MODE instead of 0600.
-n, --name FILE
Use FILE for the name instead of tempnam(3). The options -d, -p, and -s are ignored if this option is given.
-p, --prefix STRING
Use up to five letters of STRING to generate the name.
-s, --suffix STRING
Generate the file with STRING as the suffix.
--help Print a usage message on standard output and exit successfully.
--version
Print version information on standard output and exit successfully.
RETURN VALUES
An exit status of 0 means the temporary file was created successfully. Any other exit status indicates an error.
BUGS
Exclusive creation is not guaranteed when creating files on NFS partitions. tempfile is deprecated; you should use mktemp(1) instead.
EXAMPLE
#!/bin/sh
#[...]
t=$(tempfile) || exit
trap "rm -f -- '$t'" EXIT
#[...]
rm -f -- "$t"
trap - EXIT
exit
SEE ALSO tempnam(3), mktemp(1)Debian 30 May 2011 TEMPFILE(1)