一、小命令
1、echo
echo -n 表示不换行输出
echo -e 表示输出转义符
常用的转义符
选项 | 作用 |
---|---|
\r | 光标移至行首,并且不换行 |
\s | 当前shell的名称,如bash |
\t | 插入Tab键,制表符 |
\n | 输出换行 |
\f | 换行,但光标仍停留在原处 |
\ | 表示插入"\"本身转义 |
\b | 表示退格 不显示前一个字符 |
\c | 抑制更多的输出或不换行 |
退个数(\b)不能大于前面的数字
实验:
自动分区的小实验
先添加一块磁盘,然后用脚本进行自动分区,先模拟看一下需要几个回车,格式化没写,后面再进行配置
2、date ------ 查看当前系统时间
date查看当前系统时间
-d 你描述的日期,显示指定字符串所描述的时间。而非当前时间
%F 完整日期格式,等价于%Y-%m-%d
%T 时间(24小时制)(hh:mm:ss)
3、cal ---- 日历
4、seq 打印
二、循环语句
1、for语句
使用 for 循环语句时,需要指定一个变量及可能的取值列表,针对每一个不同的取值重复执行相同的命令序列,直到变量值用完退出循环。
for语句的结构
for 变量名 in 取值列表
do
命令序列
done
for语句的执行流程
- 首先将列表中的第1个取值赋给变量,并执行 do···done 循环体中的命令序列
- 然后将列表中的第2个取值赋给变量,并执行循环体中的命令序列……
- 以此类推,直到列表中的所有取值用完,最后将跳至 done 语句,表示结束循环
循环的含义
将某段代码重复运行多次,通常有进入循环的条件和退出循环的条件
重复运行的次数
- 循环次数事先已知
- 循环次数事先未知
常见的循环命令有: for while until
i可以调用后面的,也可以不调用
实验:
计算整数和:
列出奇偶数
批量添加、删除用户
密码验证
随机抽奖
改名
在/test目录下写脚本将/data目录下的*.sh的全部改名为*.txt
九九乘法表
九九乘法表倒
2、while语句
for循环语句非常适用于列表对象无规律,且列表来源已固定(如某个列表文件)的场合。而对于要求控制循环次数、操作对象按数字顺序编号、按特定条件执行重复操作等情况,则更适合使用另一种循环—while语句。
- 使用 while循环语句时,可以根据特定的条件反复执行一个命令序列,直到该条件不再满足时为止。但是在脚本应用中,应该避免出现死循环的情况,否则后边的命令操作将无法执行。
- 循环体内的命令序列中应包括修改测试条件的语句,以便在适当的时候使测试条件不再成立,从而结束循环。
while循环语句的语法结构如下所示:
while 条件测试操作
do
命令序列
done
执行流程:
- 首先判断 while 后的条件测试操作结果,如果条件成立,则执行 do···done 循环体中的命令序列
- 返回 while 后再次判断条件测试结果,如果条件仍然成立,则继续执行循环体
- 再次返回到 while 后,判断条件测试结果…如此循环
- 直到 while 后的条件测试结果不再成立为止,最后跳转到 done 语句,表示结束循环
实验:
列出1-100之间能被3整除的数
猜数字
猜商品的价格
商场购物
3、until语句
重复测试某个条件,只要条件不成立则反复执行
语法结构:
until 条件测试操作
do
命令序列
done
实验:
计算1-50的和
发消息
小实验:
1、要求将目录YYYY-MM-DD/中所有文件,移动到YYYY-MM/DD/下