当前位置: 首页 > 编程笔记 >

关于linux中系统输入输出的管理详解

周鸿光
2023-03-14
本文向大家介绍关于linux中系统输入输出的管理详解,包括了关于linux中系统输入输出的管理详解的使用技巧和注意事项,需要的朋友参考一下

系统中输入输出的管理

1.理解系统的输入输出

linux系统中,1表示正确输出,2表示错误输出

2.管理输入输出的符号

(1)输出重定向(输出到指定的位置)

> ##重定向正确输出
2> ##重定向错误输出
&> ##重定向全部输出

注意:以下实验应在普通用户中完成

find /etc/ -name passwd > file1 ##定向正确输出到file1(会显示未放到文件里的错误输出)
find /etc/ -name passwd 2> file2 ##定向错误输出到file2(会显示未放到文件里的正确输出)
find /etc/ -name passwd &> file3 ##定向所有输出到file3

file ##清空file(因为'>'符号输出时会覆盖源文件,所以> file则是用空白覆盖源文件,即可做到清空的作用)


(2)输出追加

>>  ##追加正确输出到文件最后
2>> ##追加错误输出到文件最后
&>> ##追加所有输出到文件最后

注意: 追加不会覆盖源文件内容

(3)输入重定向

<<EOF

内容

EOF(此处的EOF可以为任意组合,但需要前后相同)

比如:

vim file
输入
passwd student<<EOF
heihei
heihei
EOF

命令行输入file  ##修改student用户密码

3.管道

作用:是将前一条命令的输出变成管道后一条命令的输入

注意:管道只允许正确的输出通过,如果想要错误的输出,应使用2>&1先将错误输出编号变成正确输出编号再输出

| ##把第一条命令的正确输出变成管道后第二条命令的输入
2>&1 ##将编号为2的错误输出变成编号为1的正确输出
tee ##将输出复制到指定位置
举例: ls /bin |wc-l ##统计/bin有多少个文件
   find /etc/ -name passwd 2>&1 | wc -l ##将编号为2错误输出变成编号为1正确
     输出并统计个数
   find/etc/ -name passwd 2>&1 | tee file |wc -l## 将编号为2错误输出
         变成编号为1正确输出一起放入file文件并统计个数


总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对小牛知识库的支持。

 类似资料:
  • 问题内容: 我想在Linux操作系统上的C程序内执行以下操作: 使用syscall(或2)创建PIPE 使用exec()执行新流程 将流程的STDIN连接到先前创建的管道。 将流程的输出连接到另一个PIPE。 这样做的目的是为了性能目的而避免访问任何驱动器。 我知道使用PIPE系统调用创建管道非常简单,我可以使用popen为输入或输出目的创建管道。 但是您将如何针对输入和输出执行此操作? 问题答案

  • 问题内容: 本质上,我正在尝试替换: 为了避免使用硬盘驱动器,请在C ++中使用管道。这是我的代码: 我绝对可以确保上述字符串已正确初始化。但是,发生了两件事对我来说没有意义: (1)我正在执行的程序报告“输入文件为空”。由于我未使用“ <”调用程序,因此不应期望输入文件。相反,它应该期待键盘输入。此外,它应该阅读“ gulp_command”中包含的文本。 (2)程序的报告(通过标准输出提供)出

  • fab 的输出默认情况下是非常复杂的,几乎是将尽可能地输出所有能输出的内容,包括远程的 stderr 和 stdout 输出流、被执行的命令,等等。在很多情况下,为了了解远程的执行进度这是必须的,但是对于复杂的 Fabric 任务,很快就跟不上它的运行状态。 输出等级 为了改进任务输出,Fabric 的输出会被整合进一系列基本独立的层级或者集合,其中每一个都以独立开启或关闭。这为用户端的输出提供了

  • 问题内容: 有没有人有创建Java中的管道对象,任何好的建议 是 从Java既是一个InputStream和和OutputStream没有多重继承和两个流是抽象类,而不是接口? 基本需求是有一个可以传递给需要InputStream或OutputStream的对象的对象,该对象需要将一个线程的输出传递给另一个线程的输入。 问题答案: 看来这个问题的重点已被遗漏。如果我对您的理解正确,那么您希望一个对

  • 笔者在前面介绍的内容都为linux系统基础类的,如果你现在把前面的内容全部很好的掌握了,那最好了。不过笔者要说的是,即使你完全掌握了,你现在还是不能作为一名合格的linux系统管理员的,毕竟系统管理员要会做的事情太多了。本章以及后面章节笔者会陆续教给你作为linux系统管理员所必备的知识。只要你熟练掌握那绝对可以胜任一个最初级的管理员职位,不过只是初级的,因为你还需要在日常的管理工作中获得成长。

  • 英文原文 译者前言 这一章节比上一章节翻译的还差,最近睡眠不太好,术后恢复比较差,大家凑合看看,看不下去给指出来一下比较不好理解和绕的地方,以及错误的地方,我一定即时修改。 输入体系 Kivy能处理绝大多数的输入类型:鼠标,触摸屏,加速器,陀螺仪等等。并且针对以下平台能够处理多点触控的原生协议:Tuio, WM_Touch, MacMultitouchSupport, MT Protocol A/