linux系统中输入输出

####1.系统中输入输出的管理####
1.理解系统的输入输出

输入:
    就是我们的键盘,鼠标和我们用这些硬件在系统录入的字符
  输出:
    就是系统接收到我们想要实现的功能字符后,经过进程的处理产生字符
    输入会有两种出现
    编号1为正确输出
    编号2为错误输出

    默认着两种输出都会被系统定向到字符设备中   /dev /pst中


2.管理输入输出的符号
##输出重定向
>        ##重定向正确输出
2>        ##重定向错误输出
&>        ##重定向所有输出
注意:
    重定向会覆盖原文件内容

示例:
注意:以下实验必须在student用户下完成
find /etc/ -name passwd  >     file        ##定向正确输出到file


find /etc/ -name passwd  2>     file.err    ##定向错误输出到file


find /etc/ -name passwd  &>     file.all    ##定向所有输出到file


> file                        ##清空file

##输出追加
>>        ##追加正确输出到文件最后


2>>        ##追加错误输出到文件最后
&>>        ##追加所有输出到文件最后

注意:
    追加不会覆盖源文件内容

示例:

find /etc/ -name passwd  >>     file        ##追加正确输出到file
find /etc/ -name passwd  2>>     file.err    ##追加错误输出到file
find /etc/ -name passwd  &>>     file.all    ##追加所有输出到file

##3.管道的应用##
1.管道的作用
    “|” 管道的作用是把前一条命令的输出变成后一条命令的输入

注意:
    管道只允许正确输出通过
    通过管道的输入将会变成输入,而变成输入的这些输出是会被第二条命令处理的
    如果需要保存输出内容,那么需要复制一份输出,用到的命令是“tee”


此实验在普通用户下操作:
    find /etc/ -name passwd | wc -l        ##会看到的结果为2,因为错误输出不能通过管道
    find /etc -name    passwd 2>&1|wc -l    ##会看到19,因为编号为2的输出被“2>&1”转换为编号1
    find /etc -name    passwd 2>&1|tee file |wc -l    ##保存一份输出到file再统计行数

*******练习********

1.显示当前时间 , 显示格式为 hh:mm:ss, 并保存到文件 time.txt文件中

2.显示 /etc/passwd 文件的第 15-18 行内容

3.显示 /bin 中文件包含大写字母的文件 , 保存到bin_westos_file.txt 文件中,并统计个数显示到屏幕

4.在 student 用户下查找 /etc 下 passwd 文件,屏蔽错误输出

5.在 student 用户下查找 /etc 下 passwd 文件,正确输出保存到 /tmp/westos.out 错误输出保存到 /tmp/westos.err

6.在 student 用户下查找 /etc 下 passwd 文件,显示命令输出并保存输出到 /tmp/westos.all 中

##4.输入重定向####


cat >file <<EOF
hello
WORLD
EOF

猜你喜欢

转载自blog.csdn.net/zcx1203/article/details/81106450