重定向

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重定向相关的知识,希望对你有一定的参考价值。

重定向的作用
将标准输出(即屏幕)的信息指向一个文件,或将标准输入(即键盘)的信息指向一个文件。重定向的代号有>、<。

                                                文件名             描述符(数字代号)

标准的输入:键盘 /dev/stdin 0
标准的输出(正常信息):显示器 /dev/stdout 1
错误输出(错误提示):显示器 /dev/stderr 2
注:std是standard标准的缩写,in是input输入的缩写,out是output输出的缩写,err是error的缩写

输出重定向

覆盖
> 追加
2>> 错误信息追加
&>> 正确和错误信息均写入同一个文件

输出输入重定向
输入重定向
<
<<

特殊设备文件
/dev/null 黑洞文件,垃圾桶
/dev/zero 无限0资源设备


实例:重定向输出的练习。
date
date > a.txt
cal >> a.txt
cat a.txt
ls -ld /etc /xxx 查看目录属性,会提示一个错误和一个正确结果
ls -ld /etc /xxx 2>> a.txt 将错误的信息重定向追加写入到a.txt文件中
ls -ld /etc /xxx &>> a.txt 将正确的和错误的信息重定向追加写入到a.txt文件中
cat a.txt 显示全文内容

ls -ld /etc /xxx > a.txt 2> b.txt 将正确的信息覆盖写入a.txt,错误信息覆盖写入b.txt文件中
cat a.txt b.txt

实例:重定向输入的练习。
cat /etc/hosts
cat < /etc/hosts
mail -s "today" root < /etc/hosts 将hosts文件的内容用邮件方式发给root用户
说明:查看邮件用mail命令,输入数字编号查看邮件内容,q键退出

实例:用cat创建新文件并写入多行内容。
cat > a.txt <<EOF
111
222
333
444
EOF
解释:以上是将EOF EOF之间的内容覆盖写入到a.txt文件中。其中EOF是命令临时的结束符,也可以用其他字符。

以上是关于重定向的主要内容,如果未能解决你的问题,请参考以下文章

302 登录重定向后被 IE 删除的 URL 片段

链接中的 URL 片段和 JSF 中的 ajax 重定向

使用片段 (#) 重定向链接 - asp.net

在 PHP 重定向期间处理片段标识符

重定向时如何在 Safari 中保留 uri 片段?

Linkedin OAuth 2.0 重定向 URL 不能包含片段标识符 (#)