shell中的有类型变量

有类型变量

shell本身是一种弱类型语言,但是可以通过预先设置类型对变量固定类型

declare 和 typeset 命令

shell中使用declare和typeset为变量固定类型,他们是完全等价的,大概格式为:

1
declare -命令 变量

参数列表

参数 说明
-r 将参数变为只读
-i 将参数设为整数
-a 将变量定义为数组
-f 显示此脚本之前定义过的所有函数及内容
-F 仅显示此脚本之前定义过的函数
-x 将脚本定义为环境变量

取消声明的变量

如果要取消一个变量的声明,可以将 - 替换成 + :

1
declare +命令 变量

测试脚本

1
2
3
4
#!/bin/bash
static=1024
declare -r static
static=1024

执行结果:

1
demo5.sh: line 4: static: readonly variable