-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathshell
More file actions
47 lines (46 loc) · 1.92 KB
/
Copy pathshell
File metadata and controls
47 lines (46 loc) · 1.92 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
显示当前系统变量:
set | more #分页显示
语法:
定义变量两侧不能有空格
引用变量:$变量名
后台运行shell脚本:xxx.sh &
将命令的返回值赋给变量
反引号:A=`ls -la`
$符号:A=$(ls -la)
环境变量
export 变量名=变量值
source 配置文件(修改配置文件后,系统配置文件/etc/profile)
echo $变量名(输出环境变量)
位置参数变量
$n $0代表命令本身,$1-$9代表第1到9个参数,10及10以上的参数: ${10}
$* 代表命令行中的所有参数,当作一个整体
$@ 代表命令行中的所有参数,每个参数区别对待
$# 代表命令行中所有参数的个数
预定义变量
$$ 当前进程的进程号
$! 后台运行的最后一个进程的进程号
$? 最后一次执行的命令的返回状态
运算符
计算表达式的值并赋值
RESULT=$((运算式))
RESULT=$[运算式]
RESULT=`expr 2 \* 4` #需要空格和转义
条件判断
[ 条件 ] && echo ok #条件两端加空格,条件成立执行后面语句
读取控制台输入
read (选项) (参数)
选项
-p 指定读取值时的提示符
-t 指定读取值时的等待时间(秒),如果没有在指定的时间内输入就不等了
参数
指定读取值的变量名
系统函数
basename [pathname] [suffix] #返回完整路径最后/的部分,常用于获取文件名,如果指定了suffix,会去掉获取出来的suffix
dirname [pathname] #返回完整路径最后/的前面部分,常用于返回路径部分
自定义函数
基本语法
[ function ] funname[()}
{
Action;
[return int;]
}