Linux在启动后,会默认打开3个文件操作符,分别是

  (1)标准输入0,standard input

  (2)正确输出1,standard output

  (3)错误输出2,standard error

对于一条Linux命令执行的过程是:

  (1)首先存在一个输入:可以从键盘输入,也可以从文件输入

  (2)若命令成功执行,将会把结果输出到屏幕上(默认是输出到屏幕的)

  (3)若命令执行失败,同样会把结果输出到屏幕上(默认也是输出到屏幕的)

在使用的过程中,有时不希望把结果输出到屏幕上,而是希望输出到文件或其他设备上,这是就需要使用所谓的数据重定向

Linux下的输入输出操作符:

  (1)标准输入(stdin):0,使用<或<<

  (2)正确输出(stdout):1,使用>或>>

  (3)错误输出(stderr):2,使用2>或2>>

  注意,其中<或>表示覆盖,<<或>>表示追加

输出重定向

  1. 已知test.sh存在,而test1.sh不存在

    

    此时,正确输出和错误输出都显示在屏幕上!

  2. 要求,把正确输出写入文件stdout.txt中,错误输出显示在屏幕上

    

  3. 要求,把错误输出写入文件stderr.txt中,正确输出显示在屏幕上

    

  4. 要求,把正确输出和错误输出都写入统一文件stdall.txt中

    

  5. 要求,将错误信息关闭,使用的是2>&-

    

  6. 要求,将所有的输出信息都关闭,使用的是1>&- 2>&-

    

  扩展:“> file 2>&1”与 “2>&1 > file”的区别

    (1)“> file 2>&1”,将正确输出和错误输出都重定向到文件file中

      

    (2)“2>&1 > file”,将错误输出显示在屏幕上,将正确输出重定向到文件file中

      

输入重定向

  1. 从键盘获得数据,按下【Ctrl】+d即可保存离开

    

  2. 以给定字符作为结束

    

  3. 从文件file获取数据

    

Linux日常之数据重定向的更多相关文章

  1. Linux中的数据重定向

    重定向即指:将数据传送输出到别的地方,如设备.文件等等.那就涉及到将什么数据传送到什么地方的问题. 在linux中命令执行的起源和结果说起,看下图: Standard input和Standard e ...

  2. (大数据工程师学习路径)第一步 Linux 基础入门----数据流重定向

    介绍 开始对重定向这个概念感到些许陌生,但通过前面的课程中多次见过>或>>操作了,并知道他们分别是将标准输出导向一个文件或追加到一个文件中.这其实就是重定向,将原本输出到标准输出的数 ...

  3. 每天学点Linux命令之Linux-Shell中的数据重定向与管道命令

    在Linux shell中, 数据重定向使用 > < 符号,管道命令使用 | 符号链接前后两个命令. 具体区别如下: 数据重定向 1.(>): 左侧应该有标准输出 > 右侧只能 ...

  4. Linux就这个范儿 第15章 七种武器 linux 同步IO: sync、fsync与fdatasync Linux中的内存大页面huge page/large page David Cutler Linux读写内存数据的三种方式

    Linux就这个范儿 第15章 七种武器  linux 同步IO: sync.fsync与fdatasync   Linux中的内存大页面huge page/large page  David Cut ...

  5. 【CentOS】Linux日常管理

    /////////////////////////目录///////////////////////////////////////// 一.日常监控指标相关 1.监控系统状态命令 2.查看系统进程 ...

  6. linux日常使用指令总结

    linux 日常指令总结(ubuntu): ls -lha 所有文件及权限 df -h 系统磁盘空间 du -sh 当前目录大小 du -ah --max-depth=1 显示目录下所有的文件和文件夹 ...

  7. linux日常---3、linux常用操作

    linux日常---3.linux常用操作 一.总结 一句话总结: 状态的确是非常之好,享受这种状态. 1.linux删除文件夹和文件? rm -rf *:删文件和文件夹 rm -rf *.*:只能删 ...

  8. linux日常---2、lamp.sh安装lamp环境中的linux操作

    linux日常---2.lamp.sh安装lamp环境中的linux操作 一.总结 一句话总结: 学不如用,学一百遍还不如真正多用几遍的来的效果好 1.linux下查看进程命令? ps 常用 ps - ...

  9. linux下的数据备份工具rsync讲解

    linux下的数据备份工具 rsync(remote sync 远程同步)   名词解释: sync(Synchronize,即“同步”)为UNIX操作系统的标准系统调用,功能为将内核文件系统缓冲区的 ...

随机推荐

  1. Dark 数据类型

     dark基础数据类型  1数值型 num int a =1; double b=1.0; 2 字符型 string a ='hello'; 插值表达式${expression} int a = 1; ...

  2. springboot2.0+swagger集成

    场景:项目中添加Swagger配置,可以加速项目的开发,在快速开发项目中十分重要. 1.pom.xml添加swagger <!--swagger --> <dependency> ...

  3. select框可编辑

    $(function(){ $("#select").editableSelect({ //$("#select")为select框id effects: 's ...

  4. OpenStack 虚拟机的磁盘文件类型与存储方式

    目录 文章目录 目录 虚拟机的磁盘文件类型 虚拟机磁盘文件的存放方式 QCOW2 镜像格式与 qemu-img 指令 参考文章 虚拟机的磁盘文件类型 Nova 虚拟机的虚拟磁盘主要包含有 Root D ...

  5. Django 数据库进阶操作

    基本操作 # 增 # # models.Tb1.objects.create(c1='xx', c2='oo') 增加一条数据,可以接受字典类型数据 **kwargs # obj = models.T ...

  6. Tlbimp 生成c#互操作com组件dll;Tlbimp 生成.net互操作com组件dll

    Tlbimp 生成c#互操作com组件dll vs开发人员命令提示>进入到com组件目录>Tlbimp com.dll

  7. vue-cli本地环境API代理设置和解决跨域

    前言 我们在使用vue-cli启动项目的时候npm run dev便可以启动我们的项目了,通常我们的请求地址是以localhost:8080来请求接口数据的,localhost是没有办法设置cooki ...

  8. #Java学习之路——基础阶段二(第十三篇)

    我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...

  9. ELK+Kafka

    kafka:接收java程序投递的消息的日志队列 logstash:日志解析,格式化数据为json并输出到es中 elasticsearch:实时搜索搜索引擎,存储数据 kibana:基于es的数据可 ...

  10. mariadb数据库——关联、视图、事务、索引、外键

    1.关联 1)连接查询(内关联) inner join ... on 两个表连接查询 select * from students inner join classes 查询能够对应班级的学生以及班级 ...