目录
1--Shell使用系统变量
常用的系统变量有:$HOME, $PWD, $SHELL, $USER 等;
echo $HOME
echo $PWD
echo $SHELL
echo $USER
2--Shell使用自定义变量
通过 = 来定义变量,可通过 unset 来撤销变量;readonly 可用于声明静态变量,其不能用 unset 来撤销;
变量名称可以由字母、数字和下划线组成,但不能以数字开头;环境变量建议全部使用大写;
定义变量时,= 号两侧不能有空格;
在 bash 中,变量默认类型是字符串类型,因此无法直接进行数值运算;
变量如果含有空格,需要使用双引号或单引号括起来;
实操演示:
A=1
echo $A
unset A
readonly B=2
echo $B
unset B
通过 export 可将变量设置为全局环境变量,从而可供其它 Shell 程序使用;
DESKTOP=/Users/liujinfu/Desktop
echo $DESKTOP
export DESKTOP
3--特殊变量
3-1--$n
n 表示数字,$0 代表脚本名称,$1-$9表示第1到第9个参数,10以上的参数需要用大括号包括,如${10};
#!/bin/bash
echo "$0 $1 $2"
3-2--$#
$# 用于获取所有输入参数的个数,其常在循环中使用;
#!/bin/bash
echo "$0 $1 $2"
echo $#
3-3--$* 和 $@
$* 代表命令行中所有的参数,其将所有的参数看成一个整体;
$@ 代表命令行中所有的参数,其将每个参数区别对待;
#!/bin/bash
echo "$0 $1 $2"
echo $#
for var in "$*"
do
echo "$var"
done
for var in "$@"
do
echo "$var"
done
3-4--$?
$? 返回最后一次执行命令的状态;如果上一个命令正确执行,返回0;
echo $HOME
echo $?
4--运算符
基本语法:$((运算式)) 或 $[运算式]
常用操作符:
① 加法:expr +
② 减法:expr -
③ 乘法:expr \*
④ 除法:expr /
⑤ 取余:expr %
注意:运算符左右需有空格隔开:
实例测试:两种方式实现计算 (2+3)*4的结果:
expr `expr 2 + 3` \* 4
s=$[(2+3)*4]
echo $s