第四天主要是一些没有什么分类的命令和其他一些常用到的知识。
- shell 编程的一些特殊符号
‘’ :英文单引号,单引号括起来的字符表示为字符串
“” :英文双引号,双引号立里面可以包含特殊的转义字符
`` :反引号表示引用系统命令
$() :用途跟反引号一样
#:表示注释,但在shell文件开头表示意义不同
$ :取变量值 - 输入/输出重定向:
2.1 输入重定向–不常用
< : 覆盖输入 << : 追加输入
2.2 输出重定向–可将结果输出到文件等
正确输出: > :覆盖输出 >> :追加输出
错误输出:2>:覆盖输出 2>> : 追加输出 (2和>>>之间不能有空格)
2.3 如何将正确输出和错误输出同时保存?
保存到同一个文件中:
覆盖方式:
方式1:命令 > 文件 2>$1
方式2:命令 &> 文件
追加方式:
方式1:命令 >> 文件 2>$1
方式2:命令 &>> 文件
保存到不同的文件中:
覆盖方式: 命令 > 文件1 2> 文件2
追加方式: 命令 >> 文件1 2>> 文件2 - 其他符号
命令1;命令2 :; 表示命令顺序执行,不管报不报错
命令1 && 命令2 :&& ,与
命令1 || 命令2 :|| 表示或
命令1 | 命令2 :| 管道符,表示将命令1的正确输出作为命令2的操作对象 - 通配符(跟大多数正在表达式一样)
?:匹配任意一个字符
* : 匹配0个或任意多个字符
[] :匹配括号内的任意字符
[-] :匹配括号内的任意一个字符,-表示范围
[^] : ^ 表示逻辑非,表示匹配不是括号内的字符 - 命令别名
查看别名:alias
设置别名:alias 别名=“原命令 [格式选项]”
保存别名,使其永久生效,需要写入 ~/.bashrc
删除别名:unalias 别名 - 命令生效顺序
1.执行绝对路径或相对路径下的命令
2.别名
3.执行bash 的内部命令
4.按照$PATH 环境变量查找的目录顺序第一位