*shell脚本的关键在于输入多个命令并处理每个命令的结果,甚至需要将一个命令的结果传给另一个命令。
命令之间串起来用(who;date…),只要最大命令行字符数<=255即可
创建shell脚本,必须在文件的第一行指定要使用的shell
#!/bin/bash
shell不会解释以#开头的行,除了以#!开头的第一行
1.添加自己的文本消息来告诉脚本用户正在做什么!
2.单双引号:谁在外就显示另一方。
3.将输出信息和命令显示在一行,echo -n "info "(你需要在字符串的两侧使用引号,保证要显示的字符串尾部有一个空格)
4.使用变量(环境变量、自定义变量和存储临时数据)
用户变量可以是任何由字母、数字或下划线组成的文本字符串,长度不超过20个,区分大小写,
变量=value之间不允许出现空格
shell脚本会自动决定变量值的数据类型
变量每次被引用时,都会输出当前赋给它的值
设置:VARNAME=VALUE
使用:
V
A
R
N
A
M
E
从
而
,
引
号
中
使
用
VARNAME 从而,引号中使用
VARNAME从而,引号中使用字符,必须为$的形式
5.命令替换
将shell命令的输出赋给变量
datevar=date
datevar=$(date)
testvar=$(data +%y%m%d) 将时间输出成
命令替换是派生一个子shell来执行对应的命令,所以这些命令无法使用脚本中创建的变量。
7.重定向输入和输出
以追加的形式重定向到一个已存在的文件。
wc wc < file.txt 输出文本中的:行、词、字节数
<< 内联输入重定向: cmd << characterstring(开始结束标记)
(任何字符串都可作为(开始结束标记))
例:
8.管道
管道连接:将命令输出重定向到另一个命令(可持续地将命令的输出通过管道传给其他命令来细化操作)
9.执行数学运算
9.1 expr “数学表达式”
[root@localhost eight_chapter]# expr 300 * 100
30000
9.2 $[ operation ] (只支持整数运算)
10.执行退出码
在脚本结尾设置 exit num
exit 5