1、输入输出重定向 – 与文件读写操作有关的重定向技术的5种模式
注:输入重定向是指把文件导入到命令中,而输出重定向则是指把原本要输出到屏幕的数据信息写入到指定文件中
输出重定向分为了标准输出重定向和错误输出重定向两种不同的技术,以及清空写入与追加写入两种模式
-
标准输入重定向(STDIN,文件描述符为0):默认从键盘输入,也可从其他文件或命令中输入。
-
标准输出重定向(STDOUT,文件描述符为1):默认输出到屏幕。
-
错误输出重定向(STDERR,文件描述符为2):默认输出到屏幕。
a:标准覆盖输出重定向。
b:标准追加输出重定向。
c:错误覆盖输出重定向。
d:错误追加输出重定向。
e:输入重定向。
输入重定向中用到的符号及其作用
符号 | 作用 |
---|
命令 < 文件 | 将文件作为命令的标准输入 |
命令 << 分界符 | 从标准输入中读入,直到遇见分界符才停止 |
命令 < 文件1 > 文件2 | 将文件1作为命令的标准输入并将标准输出到文件2 |
输出重定向中用到的符号及其作用
符号 | 作用 |
---|
命令 > 文件 | 将标准输出重定向到一个文件中(清空原有文件的数据) |
命令 2> 文件 | 将错误输出重定向到一个文件中(清空原有文件的数据) |
命令 >> 文件 | 将标准输出重定向到一个文件中(追加到原有内容的后面) |
命令 2>> 文件 | 将错误输出重定向到一个文件中(追加到原有内容的后面) |
命令 >> 文件 2>&1或命令 &>> 文件 | 将标准输出与错误输出共同写入到文件中(追加到原有内容的后面) |
2、管道命令符(|)
注:管道命令符的作用是把前一个命令原本要输出到屏幕的标准正常数据当作是后一个命令的标准输入
eq1: grep “sbin/nologin” /ect/passwd | wc -l
eq2: ls -l /etc/ | more
3、命令行的通配符
通配符就是通用的匹配信息的符号,比如星号(*)代表匹配零个或多个字符,问号(?)代表匹配单个字符,中括号[]内加上数字[0-9]代表匹配0~9之间的单个数字的字符,而中括号[]内加上字母[abc]则是代表匹配a、b、c三个字符中的任意一个字符
4、常用的转义字符
转义字符 | 含义 |
---|
反斜杠(\) | 使反斜杠后面的一个变量变为单纯的字符串。 |
单引号(’’) | 转义其中所有的变量为单纯的字符串。 |
双引号("") | 保留其中的变量属性,不进行转义处理。 |
反引号(``) | 把其中的命令执行后返回结果。 |
5、重要的环境变量
env 可以输出现有系统的所有系统变量
常用的系统变量
变量名称 | 作用 |
---|
HOME | 用户的主目录(即家目录) |
SHELL | 用户在使用的Shell解释器名称 |
HISTSIZE | 输出的历史命令记录条数 |
HISTFILESIZE | 保存的历史命令记录条数 |
MAIL | 邮件保存路径 |
LANG | 系统语言、语系名称 |
RANDOM | 生成一个随机数字 |
PS1 | Bash解释器的提示符 |
PATH | 定义解释器搜索用户执行命令的路径 |
EDITOR | 用户默认的文本编辑器 |
设置变量 DIR=/etc/nginx/html
提升为全局变量 export DIR