首页 > 系统相关 >Linux I/O重定向与管道

Linux I/O重定向与管道

时间:2023-11-26 21:55:43浏览次数:47  
标签:输出 重定向 符号 标准 管道 文件 Linux 输入

1.IO重定向

I/O重定向是一个过程,这个过程捕捉一个文件、命令、程序或脚本,甚至代码块的输出,然后把捕捉到的输出作为输入发送给另外一个文件、命令、程序或脚本。

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

输出重定向:是指命令的结果不再输出到终端上,而是输出到其它地方,一般是文件中。这样做的最大好处就是把命令的结果保存起来
输入重定向:指的是’重新指定设备’来代替键盘作为新的输入设备
符号 意义
1>或> 把标准输出重定向到文件
2> 把标准错输出重定向到文件1

  • cat和>符号结合使用成为简易文本编辑器

cat > filename
# 1.cat命令后不加任何参数时,cat命令的输入是标准输入,即键盘输入
# 2.I/O重定向符号">"将键盘输入写入文件
# 3.将写入的文件作为输出放入filename
# 4."Ctrl+D"组合键结束编辑

“>>“和”>”(符号符号左边输出作为右边输入(标准输出))

  • ">>"符号将标准输出追加到已有文件的内容之后
  • ">"符号将文件的原有文件覆盖,然后写入标准输出的内容

">|"符号

">|"符号是强制覆盖文件的符号
">|“与shell的noclobber选项有关,如果noclobber选项开启,表示不允许覆盖任何文件,而”>|"符号则可以不管noclobber选项的作用,强制将文件覆盖
"<"符号(符号右边输出作为左边输入(标准输入))

"<"是I/O重定向的输入符号,它可将文件内容写到标准输入之中

2. 管道

命令从标准输入到读取数据,并将数据发送到标准输出的能力,是使用了名为管道的shell特性。使用管道操作符“|”可以把一个命令的标准输出传送到另一个命令的标准输入中。

  • sort: 排序,将输入排序
  • uniq:报错或忽略文件中重复的行
  • wc:打印行数、字数和字节数
  • grep:打印匹配行
  • head/tail:打印文件的开头部分/结尾部分head命令将输出文件的前10行,tail命令则输出文件名的最后10行。也可以通过-n参数来修改输出的行数
  • tee: 从stdin读取数据,并同时输出到stdout和文件

标签:输出,重定向,符号,标准,管道,文件,Linux,输入
From: https://www.cnblogs.com/zyj2580/p/17858033.html

相关文章

  • 无涯教程-Linux - 重定向
    在本章中,我们将详细讨论ShellI/O重定向。大多数Unix系统命令从您的终端获取输入,并将输出发送回您的终端输出。输出重定向符号>file命令将输出输出到指定的file中,如检查以下who命令,该命令将输出重定向用户文件中。$who>users请注意,终端上没有输出。这是因为输出已从......
  • Linux进程管理
    Linux中的进程管理1.进程的基本介绍在linux中,每一个执行的程序和指令都称为一个进程.每一个进程都有一个独立的进程号每一个进程,都会有一个对应的父进程.而这个父进程可以复制多个子进程.每一个进程,都可能有两种方式存在:前台,后台.前台进程是指,用户在屏幕上能够操作的程序......
  • 在Linux上使用终端给系统增加新的存储盘与分区
    在Linux系统中,你可以使用终端命令来增加新的存储盘与分区。本篇博客将指导你逐步完成这个过程。步骤1:识别新的存储盘首先,你需要插入新的存储盘到Linux系统中,或者通过MVwave给安装在本机的linux增加内存。然后,使用以下命令来查看系统是否识别到新的存储盘:sudofdisk-l这将列......
  • Linux学习随笔——文件查找、打包压缩及解压
    一、文件查找echo命令可以查看变量PATH的值;which命令可以在环境变量PATH设置的目录中查找符合条件的命令文件,查看其是否存在以及执行的位置;locate命令可以让用户快速查找到所需要的文件或目录,在使用该命令之前可先使用updatedb命令手动更新数据库;find命令:查找文件添加“i”忽......
  • 了解Linux存储管理
    Linux操作系统的存储管理是其核心功能之一,负责有效地管理计算机系统的内存资源。1.内存组成1.1物理内存物理内存是计算机硬件上实际存在的内存,由RAM(随机存储器)组成。Linux内核通过物理内存管理器来分配和释放这些硬件内存。1.2虚拟内存虚拟内存是一种将硬盘空间扩展到物理......
  • 性能测试复习准备——linux环境下安装kafka_2.13-3.2.3.tgz
    参考:https://www.bilibili.com/video/BV1Xy4y1G7zA?p=6&vd_source=79bbd5b76bfd74c2ef1501653cee29d6      解压到目录路径下:  启动kafka之前,首先启动zk:       修改配置文件:        启动kafka和查看:       ......
  • Arch Linux高分辨率屏幕设置分辨率及dpi缩放
    序言由于笔记本原生屏幕分辨率太渣,于是购入一块2440x1400、14英寸副屏。窗口管理器为dwm,使用startx命令进入环境注:此文不会改变tty的设置,仅设置xorg下某用户的个人设置目标实现:关闭笔记本屏幕,只使用副屏副屏分辨率设置为最高,且屏幕缩放设置为合适大小高分辨率小屏幕导致......
  • Linux桥接模式无网络的坑
    Linux虚拟机是VMware装的CentOS764位,从NAT模式(网络正常)改到了桥接模式,就是上不去网,排查如下:0.更改乔迁模式: 1.输入命令:vim/etc/sysconfig/network-scripts/ifcfg-ens33 发现ONBOOT是yes没问题。2.曾经将桥接模式的自动改成Inter开头的那个,无效 3.死......
  • Linux操作系统学习7
    Linux操作系统存储管理在此分享一下Linux操作系统的存储管理。在Linux操作系统中,存储管理是非常重要的一部分。它涉及到如何管理计算机的内存、磁盘和其他存储设备,以确保系统的高效运行。Linux操作系统的存储管理主要包括以下几个方面:1.内存管理:Linux操作系统使用虚拟......
  • 无涯教程-Linux - 引用机制
    在本章中,我们将详细讨论Shell引用机制。我们将从讨论元字符开始。元字符UnixShell提供了各种元字符,这些元字符在任何Shell脚本中使用时都有特殊的含义,并且除非引号引起,否则会导致终止。如,?匹配单个字符,而在目录中列出文件,而*匹配多个字符。这是大多数Shell特殊字符(也称为......