博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20181205 I/O 重定向
阅读量:6670 次
发布时间:2019-06-25

本文共 1668 字,大约阅读时间需要 5 分钟。

I/O 重定向

一.标准输入、标准输出、标准错误

20181205 I/O  重定向
file descriptors (FD,文件描述符 或 Process I/O channels):
进程使用文件描述符来管理打开的文件
[root@tianyun ~]# ls /proc/$$/fd
0 1 2 3 4
0, 1, and 2, known as standard input, standard output, and standard error
20181205 I/O  重定向
二.输出重定向 (覆盖,追加)
正确输出: 1> 1>> 等价于 > >>
错误输出: 2> 2>>
案例 1:输出重定向(覆盖)
[root@tianyun ~]# date 1> date.txt
20181205 I/O  重定向
案例 2:输出重定向(追加)
[root@tianyun ~]# date >> date.txt
20181205 I/O  重定向
案例 3:错误输出重定向
[root@tianyun ~]# ls /home/ /aaaaaaaaa >list.txt
ls: 无法访问/aaaaaaaaa: 没有那个文件或目录
[root@tianyun ~]# ls /home/ /aaaaaaaaa >list.txt 2>error.txt //重定向到不同的位置
20181205 I/O  重定向
案例 4: 正确和错误都输入到相同位置
[root@tianyun ~]# ls /home/ /aaaaaaaaa &>list.txt //混合输出
20181205 I/O  重定向
案例 5: 正确和错误都输入到相同位置
[root@tianyun ~]# ls /home/ /aaaaaaaaa >list.txt 2>&1 //重定向到相同的位置
20181205 I/O  重定向
案例 6:重定向到空设备/dev/null
[root@tianyun ~]# ls /home/ /aaaaaaaaa >list.txt 2>/dev/null //空设备,即将产生的输出丢掉
[root@tianyun ~]# ls /home/ /aaaaaaaaa &>/dev/null //空设备,即将产生的输出丢掉
20181205 I/O  重定向
思考:
cp /etc/passwd /dev/null ???
cp /etc/passwd /etc/passwd1 2>/dev/null ???
案例 7:脚本中使用重定向
[root@tianyun ~]# vim ping1.sh
ping -c1 10.18.40.100
if [ $? -eq 0 ];then
echo "10.18.40.100 is up."
else
echo "10.18.40.100 is down!"
fi
[root@tianyun ~]# vim ping1.sh
[root@tianyun ~]# chmod +x ping1.sh
[root@tianyun ~]# ./ping1.sh
案例 7:脚本中使用重定向
[root@tianyun ~]# vim ping1.sh
ping -c1 10.18.40.100 &>/dev/null
if [ $? -eq 0 ];then
echo "10.18.40.100 is up."
else
echo "10.18.40.100 is down!"
fi
案例 8:脚本中使用重定向
[root@tianyun ~]# vim ping2.sh
ping -c1 10.18.40.100 &>/dev/null
if [ $? -eq 0 ];then
echo "10.18.40.100 is up." >>up.txt
else
echo "10.18.40.100 is down!" >>down.txt
fi
[root@tianyun ~]# vim ping2.sh
[root@tianyun ~]# chmod +x ping1.sh
[root@tianyun ~]# ./ping2.sh

转载于:https://blog.51cto.com/8450442/2326730

你可能感兴趣的文章
选择最适合你的Linux学习方法
查看>>
JQuery ajax调用asp.net的webMethod
查看>>
矩阵管理——和visitor模式没有本质区别,都是为了避免资源重复
查看>>
jQuery学习笔记:文档处理
查看>>
RSS(Really Simple Syndication)常用标签
查看>>
Ambari安装之部署单节点集群
查看>>
推荐12款可用于前端开发的免费文本编辑器
查看>>
sun.misc.Unsafe的理解
查看>>
由浅入深CIL系列:2.CIL的基本构成+CIL操作码速记表+CIL操作码大全速查
查看>>
Spark RDD概念学习系列之Spark的算子的作用(十四)
查看>>
Godaddy域名申请及设置
查看>>
Java反射
查看>>
PostgreSQL的notify 与listen (五)
查看>>
PowerDesigner从Sqlserver中反转为带注释的字典及快捷键操作
查看>>
怎样在Android实现桌面清理内存简单Widget小控件
查看>>
分享10款非常有用的 Ajax 插件
查看>>
Lind.DDD.Manage项目核心技术分享
查看>>
AutoCAD 命令统计魔幻球的实现过程--(1)
查看>>
[MAC OS ] UserDefaults
查看>>
JDK5.0新特性系列---5.可变长参数Varargs
查看>>