Chinaunix首页 | 论坛 | 博客
  • 博客访问: 348235
  • 博文数量: 45
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 885
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-06 21:07
个人简介

做好自己,不卑不亢,持之以恒!!

文章分类

全部博文(45)

分类: LINUX

2015-10-09 00:00:43


1.1:使用变量
变量是可以通过引用名称来存储与检索任意数据的内存块。不必对所需的内存进行显式的分配,也不必在用完后
时方内存。尽管有些编程语言有着复杂的垃圾回收特性,但是shell脚本通常运行所需的数据量较小,而且运行周
期较短,所以简单的垃圾回收模型就足够了。
   shell使用变量的语法有些特别。很多语言(如Perl,PHP,C等)只要在变量被应用时就使用$符号作为前缀,其
他语言则不需要使用特定的标记来识别变量,从上下文就足以判断代码引用的是变量

在shell中引用变量存储的值时,必须将$符号置于变量名前:
$ echo $PATH

向变量写入值时,则不需要$符号
$  $PATH=/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin

也就是说我们可以引用变量的名称,也可以在需要变量的值时通过$符号引用变量的值,但是名称本身只会被当成普通
字符串,除非是在赋值语句的时候
$ YOUR_NAME=Bob
$ echo "The variable YOUR_NAME is $YOUR_NAME"
The variable YOUR_NAME is Bob

1.2:类型
在大多数语言中,变量都与某个“变量”联系起来,这个类型可能时字符串,整型,布尔型.......,shell完全没有“类型”的概
念,如果一定要说类型,那么任何变量都是字符串,但有一些函数在处理字符串时会将其中包含的数字字符当成数值来处理
在其他编译语言中,这种错误会在编译时捕获。shell脚本是被解释而不是被编译,所以无法捕获这种错误。
    shell变量的另一个特别之处是在使用他们之前不必显式地进行声明----没有赋值的变量就等于包含空字符串的变量。引用
未定义的变量不会抛出错误

$ cat unset.sh 
#!/bin/bash
echo "The variable YOUR_NANME is $YOUR_NANME"
YOUR_NANME=Bob
echo "The variable YOUR_NANME is $YOUR_NANME"

$ sh unset.sh 
The variable YOUR_NANME is 
The variable YOUR_NANME is Bob


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