lesson learnt:
改之前先备份,复制旧的注释掉再加新的。
基础不牢,地动山摇。
故事是这样的,从网上拨拉下来一个定时发邮件的shell,用到了here document写正文。新功能是再加个邮件列表到cc里去。没想到这么小个改动竟然翻车了。出来混迟早要还的。原来的脚本长这样( 应该差不多长这样,我要是记得就回滚了。
/bin/mail -s "${subject}" "${receiver}" <<-EOF
内容手动马赛克
EOF
加cc的时候手欠把<<-EOF改了,然后脚本就需要交互了
/bin/mail -s "${subject}" "${receiver}" -c "${cc}"
内容手动马赛克
<<-EOF
试着把-c参数改个位置
/bin/mail -s "${subject}" -c "${cc}" "${receiver}"
内容手动马赛克
<<-EOF
然并软
以为是<<-EOF换行了,删了再写还是那个位置,是terminal切割了并没有回车字符。
OK, fine,let's 度娘。大家原来都是这么写的
/bin/echo "内容手动马赛克" | /bin/mail -s "${subject}" -c "${cc}" "${receiver}"
好丑,我先用为敬。
做为一个完美主义不能忍,趁着夜深人静没有报警换bing搜一搜。换了几个姿势,哦不关键词,bing跟度娘差不多蠢,只知道宅男不懂攻城师。
来自力更生,继续换姿势,不要问我改了什么,辣眼睛
“我好像为了装逼用vi改的,自己都不记得改了什么”
jiaoben.sh: line 9: /bin/mail: Permission denied
扑街
➜ ~ ./jiaoben.sh
./jiaoben.sh: line 9: syntax error near unexpected token <<-'<br/>./jiaoben.sh: line 9:
/bin/mail -s "${subject}" -c "${cc}" "${receiver}" | cat >> <<-EOF'
果断上ladder用我大谷哥。
歪国人的月亮就是比较圆,各种姿势真贴心。
https://www.cyberciti.biz/faq/linux-unix-bash-ksh-csh-sendingfiles-mail-attachments/
Tip #2: Writing Mail Body Using Here documents
The here documents (redirection) tells the shell to read input from the current source (HERE) until a line containg only word (HERE) is seen:
#!/bin/bash
...
....
mail -s "Disk Failed" vivek@nixcraft.net.in<<EOF
NAS server [ mounted at $(hostname) ] is running out of disk space!!!
Current allocation ${_SPACE} @ $(date)
EOF
...
什么echo + EOF cat + EOF,我个智障。
PS,中间还有个插曲,改成echo后内容不能回车换行。我竟然无耻得百度了才知道要echo -e。保持对shell的敬畏,什么了解熟悉都不要随便乱说。
PPS,我真是折腾的命,什么东西我都能给玩坏。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
文章标题:一个<<-EOF引发的血案-创新互联
网站URL:https://www.cdcxhl.com/article42/pghhc.html
成都网站建设公司_创新互联,为您提供用户体验、Google、品牌网站建设、企业建站、自适应网站、微信小程序
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联