程序:指令+数据
数据输入:交互式、文件、进程
数据输出:监视器、文件、进程
标准输入(stdin):0,键盘
标准输出(stdout):1,监视器
错误输出(stderr):2,监视器
正常输出和错误输出是两个不同的数据流;
重定向:
输出重定向:>, >>
COMMAND> NEW_POSITION:覆盖重定向,会清空文件中原有的数据;
注意:危险操作;关闭此功能,可使用“set -C”,相反操作为“set +C”
COMMAND>> NEW_POSITION:追加重定向,新数据会被附加在原有文件数据的后面;
错误输出重定向:2>, 2>>
COMMAND 2> ERR_OUTPUT覆盖文件中的内容
COMMAND 2>> ERR_OUTPUT追加在文件数据后
同时定向两种输出数据流:
方法一:
COMMAND> OUT_FILE 2>&1
COMMAND>> OUT_FILE 2>&1
方法二:
COMMAND&> OUT_FILE
COMMAND&>> OUT_FILE
输入重定向:
COMMAND < NEW_IN
tr命令:
tr [OPTION]... SET1 [SET2]
把输出数据中的,在SET1中的每个字符对应地替换为SET2的每个字符;
-d: 删除在输入的数据流中出现的属于SET1的每个对应的字符;
COMMAND << EOF[EOF表示End Of File]
[root@localhost tmp]# cat << EOF >abc.txt > i am lx > hello world > eof > EOF [root@localhost tmp]# cat abc.txt i am lx hello world eof
把从输入重定向的内容输出重定向到abc.txt文件中,EOF可以用任意STRING代替,区分大小写
管道:|
把COMMAND1的输出当做COMMAND2的输入,再把COMMAND2的输出当做COMMAND3的输入,以此类推。
COMMAND1 | COMMAND2 | COMMAND3 | …
多道输出:
COMMAND | tee /PATH/TO/SOMEFILE
tee命令:把标准输入显示到标准输出中,并保存到文件xx中,如果xx文件不存在则创建之,存在则会覆盖之;
[-a] :追加到文件的后面,而不是覆盖
本文出自 “xxlixin” 博客,请务必保留此出处http://xxlixin1993.blog.51cto.com/9498220/1625961
原文:http://xxlixin1993.blog.51cto.com/9498220/1625961