输入的定义:一般是键盘,鼠标和用这些硬件在系统中录入的字符,常见的输入设备:键盘、鼠标、打字机 字符设备:是将字符放到该文件中能自动的显示到屏幕上的设备文件
stdin:标准输入,标号是0输出的定义:系统接收到我们想要实现的功能字符后,经过进程的处理产生字符,输出分为两种:正确输出和错误输出
stdout:标准正确输出,标号为1stderr:标准错误输出,标号是2输入充重定向: " < " 例如将file中的小写字母转换为大写字母显示,使用重定向能减少系统的损耗
cat file |tr 'a-z' 'A-Z' tr 'a-z' 'A-Z' < file : 将file文件中原本要放到shell中的内容重定向到tr程序中,tr:转换大小写hello hello linux hello world! 可在脚本中使用多行录入的方式实现:
cat > files << EOF hello hello linux hello world! EOF输出重定向会对原文件中的内容覆盖,相当于对原文件的重写
重定向正确输出: find /etc -name passwd 1> file.out find /etc -name passwd > file.out (1可省略不写) 重定向错误输出: find /etc -name passwd 2> file.err 重定向所有输出: find /etc -name passwd &> file.all例如对passwd中的正确、错误输出重定向输出到相应的文件中:
追加: " >> " 追加和重定向的功能类似,区别是追加是在原文件的末尾添加内容,并不会对原文件的内容覆盖
find /etc -name passwd >> westos.out ##追加正确输出 find /etc -name passwd 2>> westos.out ##追加错误输出 find /etc -name passwd &>> westos.out ##追加所有输出下图是使用管道处理错误输出并统计错误输出的行数:
管道在一条命令中可以使用多次 下图是使用管道处理错误输出,将错误的输出复制到file3中显示并统计错误输出的行数显示: tee是复制输出到指定位置