重定向
重定向是将命令执行的结果与文件进行互相传输。
将命令执行的结果传输给文件是输出重定向。
将文件内的内容传输给命令是输入重定向。
输出重定向
输出重定向,把在终端执行命令的结果保存到目标文件。
语法:
命令 > 文件
其中大于号(>)可以替换为两个大于号(>>)
命令 | 说明 |
---|---|
> | 输出的结果会覆盖原文件 |
>> | 输出的结果在原文件后追加 |
示例:
输入重定向
输入重定向和输出重定向正好相反。输入重定向将文件的内容重定向到命令,而非将命令的
输出重定向到文件。
语法:
命令 < 文件
反引号和美元符
获取执行命令的结果,并将它赋值给另一个变量。
有两种方法可以将命令输出赋给变量:
(1)反引号
键盘上和波浪线(~)位于同一键位
(2)$()
反引号
语法:
变量名称=`执行的命令`
上面的变量就会被赋值为右侧命令执行后的结果。
示例:
$()
执行的命令在括号内
语法:
变量名称=$(执行的命令)
示例:
管道符
通过反引号或$()可以获取某个命令执行的结果并赋值给一个变量,通常接下来我们会对这个新的变量进行处理。
管道符可以省去这个变量,直接处理某个命令执行的结果。
也可以这么理解:管道符可以将一个命令的输出作为另一个命令的输入。
管道符:一个竖线“|”
语法:
命令1 | 命令2 | 命令3
管道符可以连用多个。
示例:查询当前目录下所有目录、文件并查找出含有“lib”的目录、文件