语法
if [ "ok" = "ok" ]thenecho "qual"fi或者if [ "ok" = "ok" ];thenecho "qual" //这里和其他语言的区别是没有分号fi这里面的条件判断式就是使用了 test命令判断
测试脚本
### 获取到 /dev/mapper/kylin-root 的磁盘使用空间的百分比前的数字[root@centos ~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/kylin-root38G 4.9G 31G 14% /tmpfs 933M 224K 933M 1% /dev/shm/dev/sda1 976M 40M 886M 5% /boot/dev/mapper/kylin-opt19G 9.5G 7.8G 56% /opt思路:去掉还有dev,File , opt内容的行,剩下的就是符合条件的行,再提取第四列,再用 % 作为分隔符提取第一列###要cut的内容越短越容易cut到想要的结果。[root@centos ~]# df -h |grep -v 'dev' |grep -v 'File' | grep -v 'opt'| awk '{print $4}'|cut -d "%" -f 114###脚本[root@centos ~]# cat 1.sh#!/bin/bashaa=$(df -h |grep -v 'dev' |grep -v 'File' | grep -v 'opt'| awk '{print $4}'|cut -d "%" -f 1)if [ $aa -ge 10 ];thenecho "你好,美女" | mail -s "想你了" 1046851428@qq.comfi
在centos 6.9下配置 发邮件的环境:
安装发邮件的所需的软件包
1、安装sendmail:1) centos下可以安装命令:yum -y install sendmail2) 安装完后启动sendmail命令:service sendmail start2、安装mail安装命令:yum install -y mailx
安装前换yum源以及配置注意点
换新的源,很多阿里云的源,163的源都有问题,要么访问不到,要么修改新源中的 vi :%s$release/7/ ,但是最终在install sendmail时会报错提示找不到内容只有用下面的新源才能找到内容:curl -o /etc/yum.repos.d/CentOS-Base.repo https://www.xmpan.com/Centos-6-Vault-Aliyun.repo用了新源后yum clean all && yum makcache 生成元数据不报错就行了
yum -y install sendmail正确安装结果
依赖关系解决================================================================================软件包 架构 版本 仓库 大小================================================================================正在安装:sendmail x86_64 8.14.4-9.el6_8.1 base 717 k为依赖而安装:procmail x86_64 3.22-25.1.el6_5.1 base 162 k事务概要================================================================================Install 2 Package(s)总下载量:879 kInstalled size: 1.9 M
yum install -y mailx正确安装结果
依赖关系解决================================================================================软件包 架构 版本 仓库 大小================================================================================正在升级:mailx x86_64 12.4-10.el6_10 updates 235 k事务概要================================================================================Upgrade 1 Package(s)总下载量:235 k确定吗?[y/N]:
配置认证
安装好两个包以后启动服务service sendmail start
创建一个 a.sh 认证文件,并给它执行权限
chmod +x a.sh
把文件中的对应的qq的内容换成163的内容就可以配置163邮箱的发送邮件
#!/bin/bash##创建目录,用来存放证书mkdir /root/.certs/##向qq请求证书echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt##添加一个SSL证书到证书数据库中certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt#添加一个Global 证书到证书数据库中certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt#列出目录下证书certutil -L -d /root/.certscd /root/.certs/#信任证书certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt
编辑 /etc/mail.rc内的配置
去QQ邮箱申请SMTP密钥
打开QQ邮箱-设置-账户-下翻找到SMTP开启服务,这里已经开启了,如果换个邮箱没开启SMTP需要开启
把这里的授权码填入下方的配置中,不是密码
set smtp-use-starttlsset smtp=smtp.qq.comset from=自己的qq邮箱set smtp-auth-user=自己的qq邮箱set smtp-auth-password=授权码set smtp-auth=loginset ssl-verify=ignoreset nss-config-dir=/root/.certs/
发送邮件
发送失败 重启下服务即可 service sendmail restart
echo “邮件内容” | mail -s “邮件标题” QQ号@qq.com
发送附件
echo “hello world” | mail -s “sh文件” -a 文件路径 QQ号@qq.com
https://blog.csdn.net/qq_42413449/article/details/80782018
https://blog.csdn.net/weixin_44352521/article/details/114227790
https://www.cnblogs.com/godfather007/p/10534016.html
