【摘要】:在C/C++,Pascal等语言中,首先要声明变量的类型,才可以使用,而Bash无需事先声明其变量的类型就可以直接赋值。引用变量时,前面需加美元符$,如:变量前面不加$,看看会怎么样:由于Bash只有字符串类型,无论将一个整数赋给一个变量,还是将一个字符串赋给一个变量,Bash都把它当字符串处理。运行内置命令set,可以查看当前shell的所有的变量和函数定义。用内置命令unset清除变量的定义,例如:清除后,再试着显示其值,将得到空行:
在C/C++,Pascal等语言中,首先要声明变量的类型,才可以使用,而Bash无需事先声明其变量的类型就可以直接赋值。引用变量时,前面需加美元符$,如:
变量前面不加$,看看会怎么样:
由于Bash只有字符串类型,无论将一个整数赋给一个变量,还是将一个字符串赋给一个变量,Bash都把它当字符串处理。区别是,当把整数赋给一个变量时,该变量具有了整数的属性,可以进行整数运算,包括四则运算、大小关系比较运算等。
定义变量时,注意变量名字必须是字母数字下画线组合,首字符必须是字母或者下画线。下面的例子,定义变量用短线(减号)时,遇到错误,将短线改为下画线即可:
还要注意,变量定义时,等号两边不能有空格或者〈Tab〉键,否则变量定义不会成功。
没有被定义的变量,也可以直接引用,不过这时没有值。下面例子中的project_name,若是没有定义就显示其值,将显示空行。(www.xing528.com)
也可以将变量赋为空,等号的右边不输入任何东西,即在等号右边直接输入回车,就是将变量赋为空。例如:
引用一个被赋为空的变量,和直接引用一个未被定义的变量,效果是相同的,都得到空。但是这二者还是有区别的:被赋为空的一个变量,在变量表里是找得到的,只不过它的值是空的;未被定义的变量,在变量表里是找不到的。运行内置命令set,可以查看当前shell的所有的变量和函数定义。
用内置命令unset清除变量的定义,例如:
清除后,再试着显示其值,将得到空行:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。