Chinaunix首页 | 论坛 | 博客
  • 博客访问: 28253
  • 博文数量: 4
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 42
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-26 21:30
文章分类

全部博文(4)

文章存档

2014年(4)

我的朋友

分类: C/C++

2014-03-30 00:15:31


  1. #/bin/sh
  2. hello="va1"
  3. echo $hello
  4. function fun1{
  5.      local hello="va2"
  6.      echo $hello
  7. }
  8. fun1
  9. echo $hello


上面一段shell程序,在执行时第一个结果能正确显示va1,然而后面的就开始报错,line 5:syntax error  near unexpectd token 'local‘
line 5 :'     local hello="va2"
在网上查找方法后无果,最后仔细查看代码段,发现在fun1后面连接{时,需要加一个空格,书写为fun1 {结果成功执行脚本。                  

shell中函数定义的两种方式
1:
  1. #/bin/sh

  2. function fun1 {
  3.      local hello="va2"
  4.      echo $hello
  5. }

  6. fun1
注意:这种方式定义函数,函数名与{}之间要有空格,否则会出现上面的报错

2:类似于C,php定义,个人倾向于这种写法                                        

  1. #/bin/sh

  2. fun1()
  3. {
  4.      local hello="va2"
  5.      echo $hello
  6. }
  7. fun1


                                                                              


                                                                                                                                                                                                                                                                                  
阅读(2878) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~