Shell学习 - 2.21 Shell declare和typeset命令:设置变量属性

declare 和 typeset 都是 Shell 内建命令,它们的用法相同,都用来设置变量的属性。不过 typeset 已经被弃用了,建议使用 declare 代替。

declare 命令的用法如下所示:

declare [+/-] [aAfFgilprtux] [变量名=变量值]

其中,-表示设置属性,+表示取消属性,aAfFgilprtux都是具体的选项,它们的含义如下表所示:

选项

含义

-f [name]

列出之前由用户在脚本中定义的函数名称和函数体。

-F [name]

仅列出自定义函数名称。

-g name

在 Shell 函数内部创建全局变量。

-p [name]

显示指定变量的属性和值。

-a name

声明变量为普通数组。

-A name

声明变量为关联数组(支持索引下标为字符串)。

-i name 

将变量定义为整数型。

-r name[=value] 

将变量定义为只读(不可修改和删除),等价于 readonly name。

-x name[=value]

将变量设置为环境变量,等价于 export name[=value]。

【实例1】将变量声明为整数并进行计算。

#!/bin/bash

declare -i m n ret  #将多个变量声明为整数

m=10

n=30

ret=$m+$n

echo $ret

运行结果:

40

我试验了一下,使用ret=m+n,执行结果是一样的。

【实例2】将变量定义为只读变量。

[c.biancheng.net]$ declare -r n=10

[c.biancheng.net]$ n=20

bash: n: 只读变量

[c.biancheng.net]$ echo $n

10

错误信息提示:bash: n: readonly variable

【实例3】显示变量的属性和值。

[c.biancheng.net]$ declare -r n=10

[c.biancheng.net]$ declare -p n

declare -r n="10"

参考:

Shell declare和typeset命令:设置变量属性 (biancheng.net)

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夜流冰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值