shell变量的作用空间是什么

2023-07-06   


在shell脚本中定义的变量仅在脚本中有效,但使用如下的一些命令可以改变其作用域或属性:
   ①export [option] [name[=value]]
   – 表明选项结束,所有后续参数都是实参。
   -f 表明在”名-值”对中的名字是函数名。
   -n 把全局变量转换成局部变量,即命名的变量不在传给子shell。
   -p 显示全局变量列表(全局变量,即在子shell中也有效的变量)。
   缺省 把变量定义为全局变量
   注:全局变量,在子shell中也有效的变量
   局部变量,只在shell脚本中有效的变量
   ②let expression
   用于求整型表达式的值,如表达式中有空隔,则必须用双引号把表达式括起来,例如: let count=1+2
   ③local [name[=value]]
   用于创建不能传给子shell的变量,该命令仅在过程内部有效;如local后不跟参数,那么在当前已定义的局部变量列表就送往标准输出显示。
   ④readonly [option][name[=value]]
   用于显示或则设置只读变量和函数,如readonly后不跟参数,则在案标准输出上显示已定义的只读变量和函数.
   – 表明选项结束.所有后续参数都是实参
   -f 创建只读函数
   ⑤unset [option] name [name…]
   用于取消变量和函数的定义(即删除变量),但PATH、IFS、PPID、PS1、PS2、UID、EUID等变量不能删除。


相关内容:

  1. shell程序如何生命变量?shell变量是弱变量吗?
  2. Shell如何接收变量输入
  3. Java里面有没有全局变量?为什么?
  4. static全局变量与普通的全局变量有什么区别
  5. static全局变量与普通的全局变量有什么区别?static局部变量和普通局部变量有什么区别?static函数与普通函数有什么区别?
  6. 别名指示符是什么