《linux就该这么学》 第三章学习总结
第三章 主要讲了 管道符、重定向与环境变量的知识
一、什么是重定向?
在计算机中的输入默认是键盘,鼠标......等等输入设备。默认的输出是显示屏,音响.....等等输出设备。
输入输出重定向就是指将指定的输入输出,输入或输出到其他设备或文件中。
如:报错内容默认是输出到显示屏上,此刻可以将报错内容输出到某个文件中。这就是重定向。
二、重定向符有哪些?如何使用?
输入重定向符:
< : 将右侧的信息流重新输入到左侧
<< : 将标准输入重新输入到左侧,直到遇到右侧指定符号停止。例如: 1.test << 。
输出重定向符:
> : 将左侧的信息流重新覆盖输出到右侧,注意“覆盖”词语
>> : 将左侧的信息流重新追加输出到右侧,注意“追加”词语
2> : 将左侧的错误信息流重新覆盖输出到右侧。
2>> : 将左侧的错误信息流重新追加输出到右侧。
&> : 将左侧的标准与错误信息流覆盖输出到右侧。
&>> : 将左侧的标准与错误信息流追加输出到右侧。
三、什么是管道符?
将前一命令的输出,传给下一个命令,使命令可以协同工作。使简单的命令可以完成复杂的工作。
“|” -----管道符。
例如: echo "123456" | passwd --stdin xxx
改变某用户的登录密码需要与passwd命令有交互的过程,较为麻烦,此刻将标准输入直接改写xxx的密码。
四、命令通配符
? : 匹配单个字符
* : 匹配多个字符
[] : 范围匹配。 如[1-9] [a-b] [A-Z] [1,2,3]
五、常见的转移符
\ : 将“\”后面的一个字符转义为单纯的字符。
'' : 将'' 中所有的字符转义为单纯的字符串。
"" : 将""中的变量属性保留,不转义。
`` : 反引号 将``中的字符串转义为命令,并执行
六、什么是环境变量?
在计算机中,不论任何软件,命令等等可执行的功能都需要在某些指定的环境下执行,就好比植物的生长需要特定的环境。并且,某些功能在不同的环境下执行会得到不同的结果。
如:同样的 echo ~ 在root用户下执行得到的结果是/root , 在xxx用户下执行得到的结果是/home/xxx