如何从每一行获取电子邮件并将该行作为电子邮件发送到同一地址,在 csh 中
How to get email from each line and send that line as email to same address, in csh
我有一个文本文件。我需要select每一行的地址邮件,并将每一行发送到相应的地址。
我尝试使用foreach
和awk
来select地址
set valuea = `awk '{print }' FichierNote`
你能告诉我一个方法吗?这是文件中的数据。
8 mariamms maria@gmail.com (cto;MDG_MMS)
7 lj16 jean-christophe@gmail.com (gnb;DIG_FMTRD)
7 imbse emma.imbspi@gmail.com (gnb;MDG_MMS)
6 viviens stephano.vien@gmail.com (gnb;IMD)
5 alberghv vinco.alrghina@gmail.com (cto;ADG)
可能有更简单的方法,但我能想到的就是这个
while read -r line; do echo "$line"|mail -s "your_subject" "$(echo "$line"|awk '{print }')"; done < emailList.txt
将your_subject
替换为主要主题。
假设:电子邮件位于第 3 列。
解释:
while read -r line;do...done < file
将逐行读取文件
每行将存储在变量 $line
中。
"$(echo"$line"|awk '{print }')"
将获取要传递给的电子邮件地址
mail
命令。
do echo "$line"|mail -s "your_subject" "$(echo "$line"|awk '{print
}')";
会将行作为邮件正文发送到电子邮件地址
在上述步骤中导出。
您需要创建如下脚本:-
#!/usr/bin/csh
while read -r line
do
mailId=$(echo "$line" | awk '{print }')
#echo $mailId
#here you have to put your mail command
#example 'sendmail -f source_mail_id.com $mailId < mailContentFile.txt'
done < FichierNote
以上脚本将如何工作?在 while
循环中,它将读取每一行,并且 awk
命令每次都会剪切邮件 ID 并将存储在 mailId
变量中。现在您需要输入邮件命令并将 $mailId
变量作为电子邮件地址。
这是我最终使用的脚本,csh
:
#!/bin/csh
foreach line ( "`cat FichierNote`" )
echo $line | mail -s "Subject" `echo $line | awk '{print }'`
end
我有一个文本文件。我需要select每一行的地址邮件,并将每一行发送到相应的地址。
我尝试使用foreach
和awk
来select地址
set valuea = `awk '{print }' FichierNote`
你能告诉我一个方法吗?这是文件中的数据。
8 mariamms maria@gmail.com (cto;MDG_MMS)
7 lj16 jean-christophe@gmail.com (gnb;DIG_FMTRD)
7 imbse emma.imbspi@gmail.com (gnb;MDG_MMS)
6 viviens stephano.vien@gmail.com (gnb;IMD)
5 alberghv vinco.alrghina@gmail.com (cto;ADG)
可能有更简单的方法,但我能想到的就是这个
while read -r line; do echo "$line"|mail -s "your_subject" "$(echo "$line"|awk '{print }')"; done < emailList.txt
将your_subject
替换为主要主题。
假设:电子邮件位于第 3 列。
解释:
while read -r line;do...done < file
将逐行读取文件 每行将存储在变量$line
中。"$(echo"$line"|awk '{print }')"
将获取要传递给的电子邮件地址mail
命令。do echo "$line"|mail -s "your_subject" "$(echo "$line"|awk '{print }')";
会将行作为邮件正文发送到电子邮件地址 在上述步骤中导出。
您需要创建如下脚本:-
#!/usr/bin/csh
while read -r line
do
mailId=$(echo "$line" | awk '{print }')
#echo $mailId
#here you have to put your mail command
#example 'sendmail -f source_mail_id.com $mailId < mailContentFile.txt'
done < FichierNote
以上脚本将如何工作?在 while
循环中,它将读取每一行,并且 awk
命令每次都会剪切邮件 ID 并将存储在 mailId
变量中。现在您需要输入邮件命令并将 $mailId
变量作为电子邮件地址。
这是我最终使用的脚本,csh
:
#!/bin/csh
foreach line ( "`cat FichierNote`" )
echo $line | mail -s "Subject" `echo $line | awk '{print }'`
end