shell脚本的算术计算和实现mailx向qq邮箱发邮件

网上看脚本好多算数计算方法,现统计出来

#!/bin/bash
a=3
b=8
a1=nihao
b1=haode
c=$((a+b))
d=$[$a+$b]
e=`expr $a + $b`
((f=a+b))
c1=$a1$b1  #字符串拼接
echo $c $d $e $f
echo $a1$b1 $c1
[root@instance-k70br3gw shell]# bash gu.sh
11 11 11 11
nihaohaode nihaohaode

c/d/e/f 是三种求和方法
shell是真的随意
括号的用法:
()声明数组
array=(1 2 3 40)
(()) 算数运算
[] 算数运算和逻辑运算,不支持&&和||
[[]] 算数运算和逻辑运算,全支持
{}创建匿名函数
在命令行中{}
mkdir /usr/local/jav{a,b,c}
bash +h /脚本 是排错
bash +x /脚本 是debug

mailx是epel源软件,需要配置epel仓库,网上找个源写到repo配置中去,yum repolist ,然后安装mailx
[root@instance-k70br3gw local]# yum install mailx -y
[root@instance-k70br3gw local]# rpm -ql mailx
/bin/mail
/bin/mailx
/etc/mail.rc #这是它的配置文件
[root@instance-k70br3gw local]# tail -6 /etc/mail.rc
set bsdcompat
set from=xxxxxx@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=xxxxxx@qq.com
set smtp-auth-password=你的qq邮箱smtp授权码 #在qq邮箱设置-账户里,需要发一个短信验证
set smtp-auth=login
[root@instance-k70br3gw local]# echo "这是来自本地的测试邮件" | mail -s "办公室老板收" xxxxx@qq.com
上述步骤做完,几秒钟邮件就到了
shell脚本实现邮件功能
#!/bin/bash
#
js () {
read -p "请输入邮件标题:" tile
read -p "请输入收件人:" who
if [[ ! -n "$tile" ]] && [[ ! -n "$who" ]]
then
        echo "您的输入有误,请重新输入"
        js
else
        read -p "请输入要导入的正文文件名,文件请放在/var/mail/下并以.mail结尾" file
        if [ -f "/var/mail/$file" ]
        then
                file=`cat /var/mail/$file`
                echo "你的正文是: $file"
                echo $file | mail -s $tile $who && echo "邮件已发送"
        else
           echo "文件名不对,请确认"
           sleep 0.2
           exit 12
        fi
}
js
fi[root@instance-k70br3gw shell]# bash mail.sh
请输入邮件标题:X总中午好     
请输入收件人:xxxxxxx@qq.com
请输入要导入的正文文件名,文件请放在/var/mail/下并以.mail结尾send.mail
你的正文是: 你好
邮件已发送

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。