linux文件上传完毕后自动发邮件shell ---原创
原创文章,转载请注明出处,谢谢!
首先说下各个目录功能
#备份文件存放目录 /home/admin/xiaoshibak #所有shell存放目录 /home/admin/xiaoshi #自动上传+自动发邮件shell /home/admin/xiaoshi/run.sh #自动上传文件shell(FTP命令不可上传目录) /home/admin/xiaoshi/wwwrootbak.sh #自动发邮件shell /home/admin/xiaoshi/mail.sh #邮件内容 /home/admin/xiaoshi/mail.txt
下面是shell内容
/home/admin/xiaoshi/run.sh
sh /home/admin/xiaoshi/wwwrootbak.sh sh /home/admin/xiaoshi/mail.sh
/home/admin/xiaoshi/wwwrootbak.sh
#!/bin/bash ftp -n 你的FTP主机IP <<END user FTP账号 FTP密码 binary cd / lcd /home/admin/xiaoshibak prompt mput *.* # *.*就是上传此目录任意文件的意思 exit bye
/home/admin/xiaoshi/mail.sh
mailx -s "文件上传完毕" 123456@qq.com </home/admin/xiaoshi/mail.txt mailx -s "文件上传完毕" admin@aispider.com </home/admin/xiaoshi/mail.txt
/home/admin/xiaoshi/mail.txt
管理员,你好,位于/home/admin/xiaoshibak目录的所有文件已上传完毕 请重新登录SSH 删除已经上传成功的所有文件,然后将需要上传的文件打包至/home/admin/xiaoshibak目录 打包命令: zip -r /home/admin/xiaoshibak/test.zip test tar -zcvf /home/admin/xiaoshibak/tast.tar.gz test tar -jcvf /home/admin/xiaoshibak/test.tar.bz2 test rar -a /home/admin/xiaoshibak/test.rar test 以上四条命令任选其一即可.. 打包完成后执行命令: nohup /home/admin/xiaoshi/run.sh & 命令执行后就会自动上传文件,然后你就可以退出SSH了,所有文件上传完毕后就会收到邮件提示。
若果你的服务器不能执行mailx命令或者使用mailx命令不能发送邮件,请看下面这篇文章
http://www.cnblogs.com/xiaoshi1991/archive/2012/09/19/2694465.html
如果你还是不懂,就进bbs.aispider.com发帖提问去吧....