变量:内存空间的命名
内存:编址的存储单元
变量类型:实现确定的变量的存储格式和长度
字符型
数值型
整型
浮点型
逻辑运算:与,或,非,异或
异或:操作数相同则为0,否则为1
变量使用前需要声明,甚至还需要初始化
变量赋值
bash变量类型
环境变量:作用域为当前shell及其子进程exportabc=124
局部变量(本地变量)
本地变量声明:abc=122作用域为整个bash进程
局部变量声明:localabc=123 作用域为当前代码段
位置变量:(第几个位置上的参数)$1,$2,$3…..
特殊变量:$?(上一个命令执行状态返回值),执行结果是0-255
0为执行正确,其余的都是错误的,但是1,2,127是系统预留的拥有特殊的意义
使用变量:${}
/dev/null:软件设备,数据黑洞
脚本在执行时会自动启动一个shell进程
命令行中启动的脚本会继承但钱shell的环境变量
系统自动执行的脚本(非命令行启动)需要自我定义各种环境变量
撤销变量:unset+ 变量名
查看shell中的变量
set:环境与本地变量
查看shell当中的环境变量
printenv
env
export
变量以及赋值但要是还想向变量内赋值——acb=$acb:456
默认不进行算术计算
脚本是命令的堆砌,按照需要结合命令流程控制机制
开头需要使用#!/bin/bash
#:为注释,不执行
练习
1写一个脚本完成以下任务
添加5个用户user1,user2…user5
每个用户的密码同用户名,切密码添加完成后不显示执行结果信息
每个用户添加完成后显示用户某某已经成功添加
解useradduser1
echo“user1” | passwd –stdin user1 &> /dev/null
echo“Add user1 successfully”
2使用一个变量保存一个用户名
删除此命令中的用户,切一并删除其家目录
显示”用户删除完成”类的信息