Variable
自定义变量
变量名的命名规则
字母、数字、下划线
不以数字开头
变量的赋值
变量名=变量值
a=123
使用
let为变量赋值let a=10+20
将命令赋值给变量
l=ls
将命令结果赋值给变量,使用$( ) 或者 ` `
lsetc=$(ls -l /etc)
变量值有空格等特殊字符可以包含在 " " 或 ' ' 中
= 两边不能有空格
demo
cmd1=`ls -l /root`
cmd2=$(ls -l /root)
str1="I'm Will"
str2='I am "Good" Will'
str3="I'm \"Good\" Will"变量的引用
${变量名} # 称为对变量的引用
echo ${变量名} # 查看变量的值
${变量名} 在部分情况下可省略为 $变量名
系统环境变量
env
# 查看当前所有环境变量常见 bash 环境变量
Name
Description
USER
登录用户的名称
UID
登录用户的用户 ID 数字
HOME
用户的主目录
PWD
当前工作目录
SHELL
shell 的名称
PPID
父进程的 PID —启动此进程的进程的进程 ID
PATH
命令的搜索路径
# Tips: 将/root添加为命令搜索路径(修改PATH的值)
PATH=$PATH:/root预定义变量
Name
Description
$$
(运行的 bash shell [ 或其他 ] 进程)的进程 ID(或 PID)
$?
上一个命令的退出代码(查看上一条命令是否正确执行)
$0
shell 或 shell 脚本的名称(当前进程名称)
$!
上一个在后台工作的进程的进程号
$_
上一个执行的命令或脚本的最后一个参数
$*
所有参数视为一个整体字符串
$@
所有参数视为单独的字符串
位置变量
$1 ... ${10}
# 位置变量$1-$10
$#
# 位置变量的个数Last updated