shell编程之输入输出重定向

文件描述符: 0表示标准输入(STDIN),1表示标准输出(STDOUT),2表示错误输出(STDERR)

输出重定向

command > file

将command命令执行的结果写入file文件
echo  "输入重定向" > test.log    ##将echo命令的结果写入到test.log中,若test.log不存在,则会自动新建

cat test.log
###执行结果###
输出重定向

若此时再对test.log执行输出重定向,例如
date > test.log
cat test.log
###输出结果###
2018年 05月 14日 星期一 17:48:59 CST

发现原先的内容被覆盖掉了,若不希望被覆盖,则使用>>命令,表示只追加内容到test.log文件中
date >> test.log

输入重定向

command  < file

本来需要从键盘输入命令就转移到file中读取内容了
wc  -l  test.log

总结如下

类型
符号
作用
标准输出重定向
command > file
以覆盖的方式把command的正确执行结果输出到file文件中
command >> file
以追加的方式把command的正确执行结果输出到file文件中
标准错误输出重定向
error command 2> file
以覆盖的方式把command的错误输出输出到file文件中
error command 2> file
以追加的方式把command的错误输出输出到file文件中

正确输出和错误输出同时保存
command > file 2>&1
以覆盖的方式把正确和错误的输出都保存到file文件中
command >> file 2>&1
以追加的方式把正确和错误的输出都保存到file文件中
command &>file
以覆盖的方式把正确和错误的输出都保存到file文件中
command &>>file
以追加的方式把正确和错误的输出都保存到file文件中
command>>file1 2>>file2
把正确的输出追加到file1中,错误的输出追加到file2中

你可能感兴趣的:(Linux,shell编程之输入输出重定向)