您的位置:首页 > 运维架构 > Shell

shell1--变量定义

2017-06-29 19:07 281 查看
#! /bin/bash

#为了更好的控制变量的相关属性,bash提供了一个名称为declare的命令来声明变量

#declare attribute variable/可以写成typeset。。。。

#其中attribute表示变量的属性,variable表示变量的名称

#-p:显示所有变量的值

#-i:将变量定义为整数

#-r:将变量声明为只读变量

#-f:显示所有自定义函数,包括名称和函数体

#-x:将变量设置成环境变量,这样在随后的脚本和程序中可以使用

#-a:声明为数组变量,但是没有必要

#例如:

x=6/3

echo "$x" #使用通常的方法定义变量x,将其作为初始值赋给变量,shell中所有的数据都看作是字符串存储的,在执行时,输出算式本身

declare -i x

echo "$x" #使用declare声明变量x为整数,但程序没有对变量重新赋值,仍得到算式本身

x=6/3

echo "$x" #对变量重新赋值,因为变量被声明为整数,所以可以直接参与运算

x=hello

echo "$x" #将字符串赋给整数变量,所以只能变成0

x=3.14

echo "$x" #将一个浮点数赋给变量x,在bash中不支持对浮点数的支持,所以得到错误消息,此时变量x的值为0

declare +i x

x=6/3

echo "$x" #取消了变量x的整数类型,重新将算术式赋给变量x,得到算术式本身

x=$[6/3]

echo "$x"  #得到算术式值的方法

x=$((6/3))

echo "$x" #得到算术式的方法

declare -r x

echo "$x"

x=5
echo "$x" #声明了一个只读的变量,但是出现错误,此时变量仍然是2

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: