shell编程之变量:Linux shell编程基础中的变量。
包括Bash变量的分类和各变量的详细使用,如:用户自定义变量、环境变量、语系变量、位置参数变量和预定义变量。
1:什么是Bash变量?
变量:计算机内存单元,其中存放的值可以更改! #Bash变量就Bash中的变量
2:变量有哪些分类,Bash变量有哪些?
常见的变量数据类型分类:
- 字符串型
- 整型
- 浮点型
- 日期型
变量的分类(Linux中变量都是字符串型):
- 用户自定义,变量自定的。
- 环境变量,保存的是和系统操作环境的数据,有些固定有些可以自定义。
- 位置参数,预定义变量 ,变量是固定的。
3:变量命名规则
- 变量命名规格(见名知意):
-- 字母,数字,下划线,不能用数字开头
-- 变量名的长度不能超过255
-- 变量名在有效范围内必须是唯一的
-- 在Bash中,变量的默认类型都是字符串型
4:用户自定义变量
变量定义 : 变量名=变量值
两侧不能有空格变量调用 : echo $变量名
echo 只是其中一种调用方式变量叠加
-- echo "$x"456
-- echo ${x}456
- 变量查看 : set
set -u 如果设定此选项,调用未申明变量时会报错(默认无任何提示)
- 变量删除 : unset 变量名
5: bash环境变量
- 环境变量与用户自定义变量的区别?
--环境变量全局的
--自定义变量局部的
- 设置环境变量
-- exprot 变量名=变量值
或
-- 变量名=变量值
-- export 变量名
从子shell 退出父shell : exit
查看环境变量
-- set
-- env删除环境变量 unset
PATH 变量:系统查找命令路径
-- echo $PATHPATH="$APTH":/root/sh
-- 增加PATH变量的值
6: bash语系变量
语系变量:
locale # 查询当前系统语系
7: 位置参数变量 预定义变量
shell对一些参数做特殊处理,这些参数只能被引用而不能被赋值.
特定shell变量如下:
$# 传递到脚本的参数个数;
$* 以一个单字符串显示所有向脚本传递的参数。与位置变量不同,此选项参数可超过9个;
$$ 脚本运行的当前进程ID号;
$! 后台运行的最后一个进程的进程ID号;
$@ 与$*相同,但是使用时加引号,并在引号中返回每个参数;
$- 显示shell使用的当前选项,与set命令功能相同;
$? 显示最后命令的退出状态.0表示没有错误,其他任何值表明有错误;
欢迎访问我的csdn博客,我们一同成长!
"不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!"