免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2002 | 回复: 4
打印 上一主题 下一主题

[初学者]bash变量求教 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-12-19 17:47 |只看该作者 |倒序浏览
本帖最后由 wenjianhn 于 2010-12-19 20:35 编辑
  1. #!/bin/bash                                                                                                                  
  2.                                                                                                                               
  3. if [ $# -ge 1 ]; then                                                                                                        
  4.      content=`echo $@`                                                                                                        
  5.      subject=`printf "\"%s\"" "$content"`                                                                                    
  6.      echo SMS_MAIL | mutt -s $subject foo@bar.com                                                                     
  7. else                                                                                                                        
  8.      echo "usage: SMS_Mail <subject>"                                                                                         
  9. fi
复制代码
$ ./SMS_Mail test test how are you

为什么收到邮件标题为 "test
而不是 test test how are you

直接 $ echo SMS_MAIL | mutt -s "test test how are you" foo@bar.com
则能收到标题为 test test how are you的邮件

论坛徽章:
0
2 [报告]
发表于 2010-12-19 19:53 |只看该作者
加双引号
$ ./SMS_Mail "test test how are you"

论坛徽章:
0
3 [报告]
发表于 2010-12-19 20:21 |只看该作者
不想输入有点多余的引号

我的想法是这样的
$ ./SMS_Mail test test how are you
脚本会根据参数构造个 subject="test test how are you"
传至echo SMS_MAIL | mutt -s $subject foo@bar.com
执行
$ echo SMS_MAIL | mutt -s "test test how are you" foo@bar.com
不知道为什么会subject会被截断至只剩下第一个空格前的部分,即"test
有什么办法避免这种截断?

请多指教

论坛徽章:
0
4 [报告]
发表于 2010-12-19 20:43 |只看该作者
回复 3# wenjianhn


    你不想给命令行传参输入双引号,那你给你脚本中的邮件标题加个双引号不就行了: "$subject"

论坛徽章:
0
5 [报告]
发表于 2010-12-19 20:59 |只看该作者
多谢
原来还可以这么玩
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP