Linux系统的输入输出管理
1 输入输出
输入:我们用键盘,鼠标这些硬件逐个录入系统的字符
输出:系统在接收我们录入的信息后,会产生两种功能型的字符:编号为1的正确输出,编号为2的错误输出
2.管理输入与输出的符号
1). 输入重定向
输入重定向是指把命令或者可执行程序的标准输入重定向到指定的文件中,也就是输入可以不来自于键盘,而是来自于一个指定的文件。输入重定向主要用来指定一个命令的输入源。
单行输入重定向:
tr ‘a-z’ ‘A-Z’ < 文件名 ( 将文件中的小写字母全部转化为大写字母 )
多行输入重定向:
内容 << EOF
EOF
利用多行输入重定向更改密码
2).输出重定向
输出重定向是把命令或者可执行程序的标准输出或者标准的错误输出重新定向到指定的文件当中。命令的输出不再显示在屏幕上,而是写入到指定的文件当中。
管理输入输出的符号
符号 | 符号功能 |
---|---|
> | 重定向正确的输出(该编号只通过编号为1的输出) |
2> | 重定向错误的输出(该符号只通过编号为2的输出) |
&> | 重定向所有的输出(可通过全部文件) |
注:输出重定向的操作必须在普通用户下进行(在超级用户下进行,例如使用‘>’时,可以对正确的做到重定向,但却不会显示未通过编号为2的输出)且重定向符重复操作时,会覆盖原来的内容,若想添加内容时,要使用‘>>’添加符。
find /etc/ -name passwd>right.out (定向正确的到right文件中)
find /etc/ -name passwd 2>err.out (定向错误的err文件中)
find /etc/ -name passwd &>all.out (定向所有的到all文件中)
3.管道
管道的作用:把一系列的命令连接起来,把一条命令的输出变成后接命令的输入
(如果需要保存输出的内容,需要复制一份内容,用tee命令可以解决)