bash变量
2016-07-03 15:01
323 查看
变量的基本解释
变量就是存储空间的内容引用到需要使用的地方,变量名存储就是内存中资源对应的某个地址。变量赋值:NAME=VALUE
>把VALUE存储到NAME指向的内存空间中;
变量为什么有类型?
- :存储空间、存储格式、参与的运算、…… - 类型不同决定对数据的处理方式不同
变量命名:只能使用字母、数字和下划线;而且不能以数字开头;
变量名:见名知义;不能使用程序保留字,例如if、case、then、fi、esac、for、while、until、break、continue等等;变量引用
:NAME,NAME
变量替换:把变量引用符号出现的位置替换为其指向的内存空间中的数据;
bash变量种类:
本地变量:作用域为当前shell进程;不包括其子进程;set 变量名=值
环境变量:使用域为当前shell进程及其子进程;
注意:bash内嵌了许多环境变量,名称为全大写字母,例如UID、HOME、PWD、SHELL, PATH, HISTSIZE等等;
环境变量查看:
export, declare -x
env, printenv
撤销环境变量:
unset NAME
局部变量
作用域:当前代码块
local 变量名=值
位置参数变量:
在命令行地方输入脚本参数,第一个参数对应脚本变量$1,第二个对应$2依次自动对应
特殊变量
保持某些特殊数据 $? 上一个命令执行状态返回值 $# 参数的个数 $* 参数列表,引用所有的位置参数 $@ 参数列表,引用所有的位置参数 $0 命令本身 脚本本身
本地变量:
变量赋值:NAME=VALUE
查看变量:set
撤销变量:unset NAME
注意:此处非为变量引用,因此不能使用$;
所有的本地变量在shell进程终止时,会被自动撤销;
只读变量:常量
(1) declare -r NAME
(2) readonly NAME
变量声明和赋值:
declare -x NAME[=VALUE]
export NAME[=VALUE]
不支持重新赋值,也不支持撤销操作;
# declare -r username=`whoami` # echo $username root # unset username -bash: unset: username: cannot unset: readonly variable
相关文章推荐
- 一波实用的Bash Shell整理
- bash脚本输入密码不回显问题的解决方法
- bash 编程中循环语句用法
- Linux BASH多进程并行处理的方法实现
- BASH 学习笔记小结
- 写出健壮Bash Shell脚本的一些技巧总结
- Bash Shell中忽略大小写的设置方法
- Linux bash Shell中的变量类型详解
- Linux系统中bash shell编程的10个基础问题讲解
- linux BASH shell下设置字体及背景颜色
- bash获取当前路径示例
- Bash Shell 注释多行的几种方法
- linux bash字符串处理大全
- 让代码整洁、过程清晰的BASH Shell编程技巧
- 使用Bash Shell获取文件名和目录名的简单方法
- Bash Shell脚本学习小结
- bash批量修改文件名称的方法小结(增加,去除,修改后缀)
- Bash Shell中Shift用法分享
- bash 循环中变量作用范围的问题分析
- 在Debian系的Linux中检查软件包是否被安装的方法