declare/typeset

用来生命变量的,作用完全一样。

不像C语言那样严谨的语法,变量在使用前必须声明。

但是在shell中对变量的声明要求并不高,因为shell弱化了变量的类概念,所以shell被称为弱类型语言,
声明变量时不需要指明类型,
不过在使用declare命令的时候可以 使用 -i 声明整型变量

声明整型变量,-i
declare -i d=1

声明只读变量   -r
yydeMacBook-Air:~ yy$ declare -r dd=11
试图改变变量,
yydeMacBook-Air:~ yy$ dd=22
报错
-bash: dd: readonly variable

声明一个数组 array   -a
declare  -a  arr='([0]="a" [1]=2 [3]=3.14)'     #索引也是从0开始,可以在2出留空。
yydeMacBook-Air:~ yy$ echo ${arr}     #echo  变量默认只会显示索引为0的元素
a
yydeMacBook-Air:~ yy$ echo ${arr[0]}
a
yydeMacBook-Air:~ yy$ echo ${arr[1]}
2
yydeMacBook-Air:~ yy$ echo ${arr[2]}

yydeMacBook-Air:~ yy$ echo ${arr[3]}
3.14

定义函数 -F




定义函数体  -f



原文地址:https://www.cnblogs.com/cizao/p/11632333.html