shell编程基础
1. history命令
查看历史命令;
- 历史命令保存位置:~/.bash_history
- 历史命令保存数量配置:环境变量配置文件:/etc/profile,MOREN BAOCUN 1000条
[root@localhost ~]# vim /etc/profile
...
46 HISTSIZE=1000
...
选项
-w:把当前登录的命令写入文件永久生效
-c:清空历史命令
2. 常用快捷键
快捷键 | 作用 |
---|---|
ctrl+A | 移动光标到命令行的开头 |
ctrl+E | 光标移动到命令行的结尾 |
ctrl+C | 强制终止当前的命令 |
ctrl+L | 清屏,相当于clear |
ctrl+U | 删除光标之前的命令 |
ctrl+K | 删除贯标之后的命令 |
ctrl+Y | 粘贴上面两个命令剪切的内容 |
ctrl+R | 在历史命令中搜索 |
3. 输出重定向
bash的标准输入输出
设备 | 设备文件名 | 文件描述符 | 类型 |
---|---|---|---|
键盘 | /dev/stdin | 0 | 标准输入 |
显示器 | /dev/stdout | 1 | 标准输出 |
显示器 | dev/stderr | 2 | 标准错误输出 |
常用的输出重定向
命令 >> 文件 2>&1 #错误和正确输出同时保存到文件里
命令 &>> 文件 #错误和正确输出同时保存到文件里
命令>文件1 2>>文件2 # 正确输出到文件1,错误输出到文件2
4. 多命令顺序执行
- 分号;
- 逻辑与&&
命令1&&命令2:只有命令1正确执行,命令2才会执行,否则命令2不会执行
- 逻辑或||
与上面的相反,只有1不正确,2才会执行
- 管道符|
5. 特殊符号
- 单引号 ‘’ :单引号括起来的内容,所有的特殊符号均会失去意义
- 双引号 “” :在双引号中的特殊符号均没有意义,但是$、`、\是例外,调用变量、应用命令、转移符的作用
- 反引号 `` :调用系统命令的输出结果,可以赋给变量,和$()效果一样
- 小括号():括号里面的内容会在子shell中执行
- 大括号 {}:括号里面的内容会在当前shell中执行
- 转义符 \:
- #:注释
- $:调用变量