Linux 下的输入输出和重定向示例

作者:Grey

原文地址:

博客园:Linux 下的输入输出和重定向示例

CSDN:Linux 下的输入输出和重定向示例

说明

Linux 下的输入输出有如下三种形式

设备 设备名 文件描述符 类型
键盘 /dev/stdin 0 标准输入
显示器 /dev/stdout 1 标准输出
显示器 /dev/stderr 2 标准错误输出

Linux 的输入重定向符号是 <

例如

read var < /path/to/a/file

输出重定向符号有如下几种:>>>2>&>

>表示清空输入

echo 123 > /path/to/a/file

>>表示追加输入

echo 123 >> /path/to/a/file

2>表示错误输入

echo 12343 2> /path/to/a/file

&>表示全部输入

echo 122 &> /path/to/a/file

示例

以下示例中,/asdfasdfasdf目录不存在,所以执行ls会报错

[root@sec ~]# ls ./ /asdfasdfasdf 1>ls01.out
ls: cannot access '/asdfasdfasdf': No such file or directory
[root@sec ~]# cat ls01.out
./:
abc.txt
anaconda-ks.cfg
cat.out
ls01.out
ls.out

由于1表示标准输出,所以ls01.out中只记录了非错误的信息,即ls ./的内容

如果要保存错误信息,可以通过如下方式:

[root@sec ~]# ls ./ /asdfasdfasdf 1>ls01.out 2>ls03.out
[root@sec ~]# cat ls03.out
ls: cannot access '/asdfasdfasdf': No such file or directory

或者这样

[root@sec ~]# ls ./ /asdfasdfasdf 1> ls04.out 2>&1
[root@sec ~]# cat ls04.out
ls: cannot access '/asdfasdfasdf': No such file or directory
./:
a
abc.txt
anaconda-ks.cfg
cat.out
ls01.out
ls02.out
ls03.out
ls04.out
ls.out

如果要丢弃用不着的输出结果,可以使用如下命令:

ls -l /bin/usr 2> /dev/null

最新文章

  1. debian下使用Sphinx异常“Could not import extension sphinx.builders.linkcheck (exception: cannot import name SSLError)”的解决
  2. Tomcat源码解读系列(一)——server.xml文件的配置
  3. ecshop /category.php SQL Injection Vul
  4. 利用jQuery和Ajax实现检测用户名是否已经被注册
  5. _set_invalid_parameter_handler异常处理函数
  6. 在Windows2012下安装SQL Server 2005无法启动服务的解决办法
  7. django - request.raw_post_data 与 request.body
  8. sqlserver 数据行统计,秒查语句
  9. Linux系统下快速删除某个目录下大量文件
  10. JavaSE思维导图(三)
  11. 【BZOJ3993】星际战争(网络流,二分答案)
  12. ESP8266 wifi 模块配置,Wechat+APP控制实现
  13. How to Change Error Message Colors in Windows 10 PowerShell Console
  14. Win7 SP1 64位 旗舰版 IE8 快速稳定 纯净优化 无人值守 自动激活 20180604
  15. html5-fieldset和legend和keygen元素的用法
  16. win7 数据源只有 SQL SERVER, WIN7 64bit 环境使用 access 作为 CIS的数据源
  17. php mongodb manager 查数据的各种姿势
  18. 供安全工程师实用的SOC模型
  19. 使用rem编写自适应屏幕网页造成div被span撑高的解决办法
  20. 微信公众号开发--用.Net Core实现微信消息加解密

热门文章

  1. MongoDB 副本集的用户和权限一般操作步骤
  2. SQL Server如何精准匹配字符中的字符,绝对匹配。
  3. 非Navicat破解延长14天试用时间
  4. 通过netty把百度地图API获取的地理位置从Android端发送到Java服务器端
  5. 任务清单小功能的实现(任务的增、删、改、查、存储)使用Vue实现
  6. 题解 P4058 [Code+#1]木材
  7. 物理服务器做系统盘centos
  8. 快读《ASP.NET Core技术内幕与项目实战》WebApi3.1:WebApi最佳实践
  9. 所有selenium相关的库
  10. 将自己的组件打包发布到npm