Sponsored Content
Top Forums Shell Programming and Scripting How can i send mail to multiple addresses in same domain in bash? Post 302311251 by lavascript on Tuesday 28th of April 2009 09:32:31 AM
Old 04-28-2009
A really dirty solution but will get you going is :-

Code:
#!/bin/bash

file="inputfile"
domain="blahblah.com"

for local in $(awk '{print $1}' <$file)
do
        address_list="$address_list $local@$domain"
done

echo "address list is [$address_list]"

echo "Hello this is body of the email" | mailx -s "Subject" $address_list

Obviously that doesn't do any variable checking or anything.

If you want to code it with checks you may find this reg ex useful i spent ages doing the other day to validate a space separated email list. Just be aware its not totally rfc compliant as only accepts -_ as special characters and not the full range you should.

Code:
if [ -n $(echo $address_list | awk '/^(\ )*([A-Za-z0-9_-]+(\.[A-Za-z0-9_-]+)*@([A-Za-z0-9_-]+\.)+[A-Za-z]+((\ )+[A-Za-z0-9_-]+(\.[A-Za-z0-9_-]+)*@([A-Za-z0-9_-]+\.)+[A-Za-z]+)*)(\ )*$/ {print}')" ];then
       # Valid email list
       mailx -s "subject" $address_list < ./email_contents
else
       # Email list problem
       echo "WARNING: Email address list problem [ $address_list ]"
       ....other stuff....
fi

 

10 More Discussions You Might Find Interesting

1. AIX

Not able to send out multiple file in mail

Hi All, I have AIX 5.3 server. I am not able to transfer multiple file in mail but I can send one file at a time. the following command I am using to send multiple file mail -s 'PICS EXP RATE Logs' lger@nd.com < /data02/transfer/*_experience_rate_log.txt but this not working. i can send... (2 Replies)
Discussion started by: vishalpatel03
2 Replies

2. UNIX for Dummies Questions & Answers

[SOLVED] Command line mail taking too long to send; unable to qualify my own domain name

Hello, I'm having a problem with my mail. When I send mail, it takes a long time for the send to complete. In the below, datestamp is just a simple script to put in a no-white-space date/time stamp. $ datestamp ; mail woodnt; datestamp 02-05-10@193844 Subject: test timer Cc: ... (0 Replies)
Discussion started by: Narnie
0 Replies

3. Shell Programming and Scripting

bash, ssh and expect to multiple ip addresses

Hi, I need script that will allow me to connect to multiple clients using ssh on Ubuntu terminal... I have a txt file with the ip addresses of clients, i need a script that will connect to everyone one by one and send some commands... The idea is to check some settings on every client... (2 Replies)
Discussion started by: marko07
2 Replies

4. Shell Programming and Scripting

Echo - Sending mail to multiple addresses

Hi, If I want my script to send a mail to multiple recipients I can do the following: if then echo $err_string1 | mailx -s "UAT CPU ALERT" 1@email.com echo $err_string1 | mailx -s "UAT CPU ALERT" 2@email.com fi Can this also be done something like: ... (1 Reply)
Discussion started by: runnerpaul
1 Replies

5. AIX

I Need to send mail to 2 domain

Hi, I need to send alert mail from AIX to mail server. My mail server IP is 192.168.0.10 so I've add /etc/hosts as below 192.168.0.10 mydomain1.com the I try to send mail to myname@mydomain1.com it's OK Then I need to send mail to myname@mydomain2.com too. so I've... (1 Reply)
Discussion started by: oakmojo
1 Replies

6. Shell Programming and Scripting

Perl - match e-mail addresses in multiple files

Hi, I'm trying to write a script that will check multiple files in a directory (all the relevant filenames begin "TT04.NOTES") for e-mail addresses, and then print these addresses to screen with a count at the bottom. I'm a bit of a novice with Perl but thought it would be the best tool for the... (2 Replies)
Discussion started by: wf1974
2 Replies

7. Red Hat

How to send mail with multiple attachments?

We don't have uuencode installed in our machines..... Please tell me how to send mail with multiple attachments ??? URGENT !!!!! Please tell me using command line (or) scripts.......... please...... Thanks in Advance.... (1 Reply)
Discussion started by: vamshigvk475
1 Replies

8. Shell Programming and Scripting

Send a mail to multiple users

I have a file 1.txt which has 3 mail ids as below: Maillist=abc@gmail.com def@gmail.com rcg@gmail.com Now I want to write a script which will read this file and send the mail to all the users present in this file. (6 Replies)
Discussion started by: Vivekit82
6 Replies

9. UNIX for Dummies Questions & Answers

Configure sendmail to Only send mail to one domain

On both Solaris 10 and RHEL, we would like to configure sendmail in such a way that the email sent from the server should only go to a particular domain. For eg. We want our server to ONLY send the mail to <user_name>@abc.com. All other domains should be blocked/restricted. The server should not... (0 Replies)
Discussion started by: sk2code
0 Replies

10. UNIX for Beginners Questions & Answers

Bold text in Bash and send mail

I have a sample script here I want to bold the word BOLD in the text and send through email. Tried several ways but not seems to working. BODY="Hello. I want to BOLD this" { echo "From: from@gmail.com" echo "To: to@gmail.com" echo "Subject: Texting" ... (1 Reply)
Discussion started by: lpoolfc
1 Replies
MAILADDR(7)							Linux User's Manual						       MAILADDR(7)

NAME
mailaddr - mail addressing description DESCRIPTION
This manual page gives a brief introduction to SMTP mail addresses, as used on the Internet. These addresses are in the general format user@domain where a domain is a hierarchical dot separated list of subdomains. For example, the addresses eric@monet.berkeley.edu Eric Allman <eric@monet.berkeley.edu> eric@monet.berkeley.edu (Eric Allman) are valid forms of the same address. The domain part (``monet.berkeley.edu'') may be the name of an internet host, or it may be a logical mail address. The domain part is not case sensitive. The local part (``eric'') is often a user name, but its meaning is defined by the local software. It can be case sensitive, but usually isn't. If you see a local-part that looks like garbage, it is usually because of a gateway between an internal e-mail system and the net, here are some examples: "surname/admd=telemail/c=us/o=hp/prmd=hp"@some.where USER%SOMETHING@some.where machine!machine!name@some.where I2461572@some.where (These are, respectively, an X.400 gateway, a gateway to an arbitrary inernal mail system that lacks proper internet support, an UUCP gate- way, and the last one is just boring username policy.) The real-name part (``Eric Allman'') can either be placed first, outside <>, or last, inside (). (Strictly speaking the two aren't the same, but the difference is outside the scope of this page.) The name may have to be quoted using "" if it contains certain characters, most commonly ``.'': "Eric P. Allman" <eric@monet.berkeley.edu> Abbreviation. Many mail systems let users abbreviate the domain name. For instance, users at berkeley.edu may get away with ``eric@monet'' to send mail to Eric Allman. This behavior is deprecated. Route-addrs. Under some circumstances it may be necessary to route a message through several hosts to get it to the final destination. Normally this happens automatically and invisibly, but sometimes not, particularly with old and broken software. Addresses which show these relays are termed ``route-addrs.'' These use the syntax: <@hosta,@hostb:user@hostc> This specifies that the message should be sent to hosta, from there to hostb, and finally to hostc. Some hosts disregard route-addrs and send directly to hostc. Route-addrs occur frequently on return addresses, since these are generally augmented by the software at each host. It is generally possi- ble to ignore all but the ``user@hostc'' part of the address to determine the actual sender. Postmaster. Every site is required to have a user or user alias designated ``postmaster'' to which problems with the mail system may be addressed. The ``postmaster'' address is not case sensitive. FREQUENTLY ASKED QUESTIONS rtfm.mit.edu and many mirrors store a collection of FAQs. Please find and use a nearby FAQ archive; there are dozens or hundreds around the world. mail/inter-network-guide explains how to send mail between many different networks. mail/country-codes lists the top level domains (e.g. ``no'' is Norway and ``ea'' is Eritrea). mail/college-email/part* gives some useful tips on how to locate e-mail addresses. FILES
/etc/aliases ~/.forward SEE ALSO
binmail(1), mail(1), mconnect(1), forward(5), aliases(5), sendmail(8), vrfy(8), RFC822 (Standard for the Format of Arpa Internet Text Mes- sages). 4.2 Berkeley Distribution 1995-06-24 MAILADDR(7)
All times are GMT -4. The time now is 07:06 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy