要向文件中列出的用户发送自定义消息的Shell脚本



我想写一个shell脚本,打开两个文本文件(例如message.txt、users.txt(,将第一个文件中发现的消息发送给第二个文件中找到的每个用户?

如果用户当前已登录,则应使用";写";命令,否则(如果他们当前未登录(,它将作为";邮件">

我试着运行这个代码:

#!/bin/bash
msg=`cat $1`
input=$2
while IFS= read -r usr
do
`write $usr $msg`
if [ $? -eq 1 ]
#here I tried checking if the $usr found in the $2 file is not online
`mail $usr $msg`
#The Subject part could also be a problem here
fi
done < "$input"

然而,我不确定邮件部分应该如何完成,当运行代码时,它甚至说在第22行(我尝试向用户发送邮件的地方(有一个错误

您可以使用以下语法通过bash发送电子邮件:

mail -s 'message subject' username@gmail.com <<< 'testing message body'

因此,在您的情况下,您应该在主题之前添加-s参数,并添加正文以添加到您的电子邮件中。(你可以用"表示空体(

另一种语法:

echo "text message body" | mail -s "message subject" username@gmail.com

PS:您不应该将backtick(`(用于邮件命令

相关内容

  • 没有找到相关文章

最新更新