Linux 重定向与管道符

简介: Linux 重定向与管道符

重定向与管道符

重定向


  • 作用: 将命令的执行结果输出到指定的文件中,而不是直接显示在屏幕上
  • 0 标准输入 键盘 stdin 仅读取
  • 1 标准输出 终端 stdout 仅写入
  • 2 标准错误 终端 stderr 仅写入
  • 3+ filename 其他文件 读/写
在Linux中构建了一个带有编号标记的通道(文件米描述符)的进程来管理打开文件
通过进程连接到文件,进行文件数据的操作
  • 重定向标准输出

    • 1>(1可省略)

      • 将命令的执行结果输出到指定文件中,而不是显示在屏幕上,覆盖写
      • history > history.txt
      • find / -user ruochen > history.txt
    • 1>>(1可省略)

      • 标准输出,追加写
      • ls >> history.txt
  • 重定向标准错误输出

    • 2>

      • 将标准错误信息保存到指定文件中,进行覆盖写
      • find / -user ruochen 2> error.txt
    • 2>>

      • 将标准错误信息保存到指定文件中,进行追加写
      • find / -user ruochen 2>> error.txt
  • find / -user ruochen > true.txt 2> false.txt
  • 重定向标砖输出和标准错误输出

    • &> 覆盖写
    • &>> 追加写
    • 将标准输出和标准错误全部保存到指定文件中
    • find / -user ruochen &> a.txt
    • find / -user ruochen &>> a.txt
find / -user ruochen >> true.txt 2> /dev/null

管道: 传送


  • 标识符号 |
  • 就是将管道前面的输出结果作为后面语句的条件执行
  • 格式

    • 语句1 | 语句2 | .... 语句n
  • 案例

    • ls -l /usr/bin | more
    • ls | wc -l > /tmp/rootdir
    • ls -t | head -n 10 > /tmp/rootdir
    • find / -name root | find -size +10k | find -size +100k
目录
相关文章
|
4月前
|
消息中间件 Linux 开发者
Linux进程间通信秘籍:管道、消息队列、信号量,一文让你彻底解锁!
【8月更文挑战第25天】本文概述了Linux系统中常用的五种进程间通信(IPC)模式:管道、消息队列、信号量、共享内存与套接字。通过示例代码展示了每种模式的应用场景。了解这些IPC机制及其特点有助于开发者根据具体需求选择合适的通信方式,促进多进程间的高效协作。
189 3
|
4月前
|
存储 Unix Linux
Linux I/O 重定向与管道
【8月更文挑战第17天】重定向在Linux中改变命令I/O流向,默认有">"覆盖输出至文件及">>"追加输出至文件末尾,便于保存结果;使用"<"从文件读取输入而非键盘,高效处理数据。文件描述符如0(stdin)、1(stdout)、2(stderr)标识I/O资源,支持读写操作。管道以"|"连接命令,使前一命令输出成为后一命令输入,如排序用户或找出CPU占用最高的进程,构建复杂数据处理流程。
53 9
|
4月前
|
存储 Linux 数据处理
在Linux中,什么是管道操作,以及如何使用它?
在Linux中,什么是管道操作,以及如何使用它?
|
4月前
|
存储 Unix Linux
Linux I/O 重定向与管道
【8月更文挑战第14天】输出重定向可将命令结果存入文件,如`>`覆盖写入或`>>`追加写入。输入重定向从文件读取数据,如`<`代替键盘输入。这些操作利用文件描述符(如0:stdin, 1:stdout, 2:stderr)管理I/O。管道`|`连接命令,使前一命令输出作为后一命令输入,便于数据处理,如排序用户`sort -t: -k3 -n /etc/passwd | head -3`或查找CPU占用高的进程`ps aux --sort=-%cpu | head -6`。
48 4
|
4月前
|
Unix Linux Shell
Linux I/O 重定向简介
Linux I/O 重定向简介
43 2
|
4月前
|
开发者 API Windows
从怀旧到革新:看WinForms如何在保持向后兼容性的前提下,借助.NET新平台的力量实现自我进化与应用现代化,让经典桌面应用焕发第二春——我们的WinForms应用转型之路深度剖析
【8月更文挑战第31天】在Windows桌面应用开发中,Windows Forms(WinForms)依然是许多开发者的首选。尽管.NET Framework已演进至.NET 5 及更高版本,WinForms 仍作为核心组件保留,支持现有代码库的同时引入新特性。开发者可将项目迁移至.NET Core,享受性能提升和跨平台能力。迁移时需注意API变更,确保应用平稳过渡。通过自定义样式或第三方控件库,还可增强视觉效果。结合.NET新功能,WinForms 应用不仅能延续既有投资,还能焕发新生。 示例代码展示了如何在.NET Core中创建包含按钮和标签的基本窗口,实现简单的用户交互。
80 0
|
4月前
|
消息中间件 Linux
Linux0.11 管道(十一)
Linux0.11 管道(十一)
31 0
|
4月前
|
数据挖掘 Linux 应用服务中间件
在Linux中,如何在Linux中使用管道?
在Linux中,如何在Linux中使用管道?
|
4月前
|
存储 Linux 数据处理
在Linux中,管道(pipe)和重定向(redirection)的是什么?
在Linux中,管道(pipe)和重定向(redirection)的是什么?
|
4月前
|
存储 Unix Linux
在Linux中,什么是管道?它是如何工作的?
在Linux中,什么是管道?它是如何工作的?