Linux shell 重定向
来源:互联网 发布:淘宝卖家流量钱包充值 编辑:程序博客网 时间:2024/09/21 08:17
Linux shell 重定向
1. 重定向命令列表如下:
command > file 将输出重定向到 file。
command < file 将输入重定向到 file。
command >> file 将输出以追加的方式重定向到 file。
n > file 将文件描述符为 n 的文件重定向到 file。
n >> file 将文件描述符为 n 的文件以追加的方式重定向到 file。
n >& m 将输出文件 m 和 n 合并。
n <& m 将输入文件 m 和 n 合并。
<< tag 将开始标记 tag 和结束标记 tag 之间的内容作为输入。
需要注意的是文件描述符 0 通常是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(STDERR)。
2.重定向深入讲解
一般情况下,每个 Unix/Linux 命令运行时都会打开三个文件:
标准输入文件(stdin):stdin的文件描述符为0,Unix程序默认从stdin读取数据。
标准输出文件(stdout):stdout 的文件描述符为1,Unix程序默认向stdout输出数据。
标准错误文件(stderr):stderr的文件描述符为2,Unix程序会向stderr流中写入错误信息。
默认情况下,command > file 将 stdout 重定向到 file,command < file 将stdin 重定向到 file。
(1)#如果希望 stderr 重定向到 file,可以这样写:
command 2> file
command 2>> file
data 2>error.txt
(2)#如果希望将 stdout 和 stderr 合并后重定向到 file,可以这样写:
command > file 2>&1
command >> file 2>&1
(3)#如果希望对 stdin 和 stdout 都重定向,可以这样写:
command < file1 >file2
sort < sort.txt > hello.txt
3./dev/null 文件
此文件可以理解为黑洞,垃圾回收站
command > /dev/null
dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件读取内容,那么什么也读不到。
但是 /dev/null 文件非常有用,将命令的输出重定向到它,会起到”禁止输出”的效果。
如果希望屏蔽 stdout 和 stderr,可以这样写:
command > /dev/null 2>&1
- linux Shell重定向
- linux Shell重定向
- linux shell重定向
- linux shell重定向
- Linux shell重定向
- Linux Shell 重定向
- linux shell 重定向
- Linux shell重定向
- linux Shell重定向
- Linux shell 重定向
- Tips: linux shell重定向
- Linux下Shell重定向
- linux下shell重定向
- linux shell输入输出重定向
- Linux下Shell重定向
- linux shell io重定向
- Linux Shell 文件重定向
- Linux Shell数据重定向
- Android:ListView之ViewHolder
- 无人机驾驶员培训学习记录(十五)
- JAVA 并发编程
- 架构师之路:JAVA高并发高性能高可用高扩展架构性能优化系列课程
- 在IDEA中实战Git
- Linux shell 重定向
- [LeetCode]Maximum Length of Repeated Subarray
- C语言——文件操作
- c++注释
- [ CDQ分治 ] BZOJ4237
- sql语句的证删改查的sql语句
- MySQL导出performance_schema
- macOS 配置 Java 和 Hadoop
- MyEclipse中运行tomcat报Confirm Perspective Switch