Linux系统的输入输出及重定向
Linux系统的输入输出及重定向
制作人:全心全意
Linux系统的输入输出设备
默认输出设备:标准输出,STDOUT,1
默认输入设备:标准输入,STDIN,0
标准错误输出:STDERR,2
I/O重定向
重定向输出:>(覆盖输出)、>>(追加输出)
重定向错误输出:2>/2>>
重定向标准输出和错误输出:&>
重定向输入:<
在此处生成文档:<<
拓展:linux中bash的安全机制
set -C #开启 当文件存在,不允许使用覆盖输出重定向
强制覆盖输出:>|
set +C #关闭 当文件存在,允许使用覆盖输出重定向,默认关闭
set -C [root@localhost ~]# ls /etc > 1.txt -bash: 1.txt: 无法覆盖已存在的文件 [root@localhost ~]# ls /usr/ >| 1.txt
[root@localhost ~]# cat << END #END为文档结束标记 > 1 > 2 > 3 > 4 > 5 > END 1 2 3 4 5
[root@localhost ~]# cat >> 2.txt << end #将文档保存到文件中 > nihao > jiwshule > end [root@localhost ~]# cat 2.txt nihao jiwshule
管道
管道:前一个命令的输出,作为后一个命令的输入
格式:命令1 | 命令2 | 命令3
#将文件内容做字符替换 [root@localhost ~]# cat 2.txt | tr 'a-z' 'A-Z' NIHAO JIWSHULE #从标准输入获取密码字符串 [root@localhost ~]# echo "123456" | passwd --stdin zq 更改用户 zq 的密码 。 passwd:所有的身份验证令牌已经成功更新。
tee:从标准输入获取内容,既输出到标准输出,又保存到文件中
[root@localhost ~]# echo "hello,word" | tee 3.txt hello,word [root@localhost ~]# cat 3.txt hello,word