sendmail in script.


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers sendmail in script.
# 1  
Old 11-06-2003
sendmail in script.

SCO UnixWare 711
ksh


Hi Friends.

I am using sendmail. I can issue a sendmail request via the prompt but the same request will not work though a script it hangs after the first line of sendmail - can someone plese help.

Below is what hangs:

From Script:

$NUMBER has been declared.

/usr/lib/sendmail suresh_yadav@myaddress.com
from: root
to: queue_admins
subject: queue increasing
The queue is increasing currently at `expr ${NUMBER} -12`
.

I have run the script using set -vx and hangs at the following:

+ /usr/lib/sendmail suresh_yadav@myaddress.com


I would appreciate help on resolving why.

Thanks

Suresh
# 2  
Old 11-06-2003
Hi Suresh,

I had the same problem. Now after some reconfig I re-wrote an excisting script. This is what I re-use for each program that needs to mail something.
Hope you understand it a little, it's a cool one.

Regs David
Code:
#!/bin/ksh

# We have to invoke a mailer that has no escape possibilities...
#
# The only one I know of would be sendmail, but this is very ugly
# to invoke directly because we have no control of To: and
# Subject: lines...
#
# This wrapper writes some of the Header-Fields before forwarding the
# mail itself in the body
#
# usage: start-mail mailaddr subject

# you might want to change the following line to set a sepcific from: address
#sender=`/usr/bin/id|/usr/bin/sed 's/.*(\(.*\)) .*/\1/'`
sender='root@'`/usr/bin/hostname`

# it's a bad idea to use temporary files with predictable names that are
# located in a world-writable /tmp dir because other local users may create
# sym-links pointing to another file...
#
# better use a tmp-dir that is only accessible by the logsurfer user
# change the following line!
# example: TMP=/home/logsurfer
TMP=/tmp

recepient="$1"
subject="$2"
message="$3"

if [ $# -eq 0 ]; then
	echo 'usage: start-mail mailaddr subject' 1>&2
	exit 1
fi

/bin/rm -f $TMP/start-mail.$$

echo "From: $sender" > $TMP/start-mail.$$
echo "To: $recepient" | /usr/bin/tr -cd '[\040-\176]' >> $TMP/start-mail.$$
echo "" >> $TMP/start-mail.$$
if [ $# -gt 1 ]; then
	shift
	echo "Subject: $subject" | /usr/bin/tr -cd '[\040-\176]' >> $TMP/start-mail.$$
	echo "" >> $TMP/start-mail.$$
else
	echo "Subject: (no subject given - logsurfer output)" >> $TMP/start-mail.$$
fi
echo "" >> $TMP/start-mail.$$
echo "$message" | /usr/bin/tr -cd '[\040-\176]' >>/$TMP/start-mail.$$
echo "\n." >>/$TMP/start-mail.$$


cat $TMP/start-mail.$$ - | /usr/lib/sendmail -odq -t

/bin/rm -f $TMP/start-mail.$$

added code tags for readability --oombera

Last edited by oombera; 02-19-2004 at 12:20 PM..
# 3  
Old 11-06-2003
just looking for some clarification.

is there a reason you dont use the commandline utility mail or mailx to send outbound mail?

does doing it your way offer something that the commandline utility dosent?

i dunno it just looks like alot of work could have been simplified.
# 4  
Old 11-06-2003
Hi Optimus,

No, I just have this script in my path (mailform). Whenever I want to send an e-mail from inside a script or what ever I just type :

mailform "my@emailadres" "This is my Subject" "And this is my message. Just \
until I am finished \
Like now"

Yes, It's some work to set up, after that it is easier in work. Especialy inside scripts. f.e. when mailing inside an if-statement, the dot (.) still needs to be at the beginning of the line.
Also from and other setting could be added very easily like this.

Regs David
# 5  
Old 11-06-2003
You could have used mailx
Code:
mailx -s "This is my Subject" "my@emailadres" << EOF
And this is my message. Just
until I am finished
Like now
EOF

# 6  
Old 11-10-2003
prefer mailx

Hi,

Thanks for your replies.

I used to use mail/mailx which I much prefer - however it stopped working when we changed our domain name and relocated our exchange server. If anyone can tell me where to look to configure mailx again - this would be a better solution as it would stop me having to rewrite all of my scripts.

Thanks

Suresh
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script to connect to remote and sendmail.

Hello, Kindly guide. SendMail function on my script is not working, but it works manually. Any better way to handle the script is appreciable. #!/bin/sh GetHostConnection() { truncate --size 0 /home/web/for_mail.out while read -r lines ; do ip=`echo $lines | awk '{print... (9 Replies)
Discussion started by: sadique.manzar
9 Replies

2. Shell Programming and Scripting

Python script for sendmail limitation

Hello, I have a web server (apache, php-fpm) with several vhosts sending mail through php. In order to avoid IP blacklisting when spam is sent by a domain i'm looking for a way to setup a rate limit for outgoing mail and when this limit is reached I want to receive an email warning me that a... (1 Reply)
Discussion started by: draugr
1 Replies

3. Solaris

Clarifying sendmail configuration - sendmail-client offline

Hi all, I have read about sendmail running as 2 separate process. 1 as a MSP, and the other as the real daemon or MTA. In my current configuration, the sendmail-client is disabled. Both submit.cf and sendmail.cf are left as default untouch I do not specified any mailhost... (3 Replies)
Discussion started by: javanoob
3 Replies

4. Shell Programming and Scripting

Sendmail script not working

I am facing a peculiar problem in AIX 6.1 I can execute sendmail command using the following script sendmail -f sender -v recepient Body of email ^dThe command executes successfully and mail is sent to the intended recepient but when I try to use the attached script, the mail is not sent... (3 Replies)
Discussion started by: abhilashnair
3 Replies

5. Shell Programming and Scripting

Help with integrating shell script with sendmail

Hi friends, I want to converting a task ,of making few words in my task mail bold and underlined sometimes, automated through sendmail. I have never used sendmail/mailx before. What i want is my ouput which looks like below: +++++++++++++++ DETAILS: sqlid:6mbiosdfsdff parsing_schema_name:... (1 Reply)
Discussion started by: kunwar
1 Replies

6. UNIX for Advanced & Expert Users

Sendmail Script don't deliver mails

Hi, i've got a problem with a sendmail script, which sends HTML mails. Some mail will rejected by the mail server, because the fqdn doesn't exist. Where can i set the sender-domainname by sendmail? My mail server say: "Sender address rejected: Domain not found;", which is correct... (3 Replies)
Discussion started by: rainbowwarrior
3 Replies

7. Shell Programming and Scripting

Sendmail works from script, but not when called from Apache

Hi, I am building a web interface to run a series of shell scripts that reside on the web server. The bash script are written such that they can be used independently for the task they are meant for, or the same scripts can be run from this web UI. The scripts are mostly for doing software... (1 Reply)
Discussion started by: MacQAGuy
1 Replies

8. Shell Programming and Scripting

need help with my sendmail script

hi all, i'm trying to use sendmail to send a message in html format with attachments but having some issues with the attachments. below is my code. ATTACH1="/export/home/adshocker/attach.prog" ATTACH_NAME1=${ATTACH1##*/} echo "ATTACH_NAME1=$ATTACH_NAME1"... (2 Replies)
Discussion started by: adshocker
2 Replies

9. Shell Programming and Scripting

Using sendmail utility in K Shell script

Hi, I am new to shell scripting and thus any help will be highly appreciated. I need to write a K shell script where in the email sending feature should be handled by sendmail utility and I have come up with the following : #!/usr/bin/ksh echo "This is a test mailest mail" | /usr/lib/sendmail... (4 Replies)
Discussion started by: sdiptanil
4 Replies

10. UNIX for Dummies Questions & Answers

Issues with cronjob : Script using sendmail

Hi All, I am new to unix. I have created a cron job, that sends mail using sendmail utility. Am facing a unique problem while making a cron job for this script. In the script I append a file to my mail using 'cat' command. cat $report >> $mailMsg & this $mailMsg is used as mail... (7 Replies)
Discussion started by: anshulporwal
7 Replies
Login or Register to Ask a Question