标准I/o重定向和管道

一级标题

二级标题

三种I/o设备

1.标准输入和输出

程序:指令+数据

读入数据input

输出数据output

标准输入---0(默认接收来自终端窗口的输入)
标准输出---1(默认输出到终端窗口)
标准错误---2(默认输出到终端窗口)

二级标题

2.把I/o重定向至文件

I/O重定向即改变默认位置

标准输出与标准错误可以重定向到文件

COMMOND 操作符 FILE

1>  或者 >   标准输出如果文件存在覆盖原有的内容不存在新建
2>    标准错误输出
&>      把所有输出重定向到文件
set  - C  : 禁止对已经存在文件使用覆盖重定向,强制覆盖输出,则使用 >|
set  +C  :允许覆盖
>>    可以在原有内容上追加内容
2>> 追加标准错误重定向至文件

标准标准输入重定向

< 实现输入重定向。输入重定向不经常使用,因为大多数命令都以参数的形式在命令行上指定输入文件文件名,尽管如此,当使用一个不接受文件名为输入参数的命令,而需要的输入又是在一个已存在的文件里,就可以使用输入重定向解决问题。

tr命令

  选项说明:
      -c, -C, –complement 取字符集补集。
       -d, –delete 删除集合1中的字符而不是转换
      -s, –squeeze-repeats 删除所有重复出现字符序列,只保留第一个;即将重复出现字符串压缩为一个字符串。
      -t, –truncate-set1 先删除第一字符集较第二字符集多出的字符

     \NNN 八进制值的字符 NNN (1 to 3 为八进制值的字符)
      \\ 反斜杠
      \a Ctrl-G 铃声
      \b Ctrl-H 退格符
      \f Ctrl-L 走行换页
      \n Ctrl-J 新行
      \r Ctrl-M 回车
      \t Ctrl-I tab键
       \v Ctrl-X 水平制表符

     [:alnum:] 所有的字母和数字
     [:alpha:] 所有字母
     [:blank:] 水平制表符,空白等
     [:cntrl:] 所有控制字符
     [:digit:] 所有的数字
     [:graph:] 所有可打印字符,不包括空格
     [:lower:] 所有的小写字符
     [:print:] 所有可打印字符,包括空格
     [:punct:] 所有的标点字符
     [:space:] 所有的横向或纵向的空白
     [:upper:] 所有大写字母

标准输入重定向

把多行重定向
  cat > f1.log <<EOF(终止词)
      > 123
      >fff
      >dsf
      >EOF (结束)

二级标题

使用管道

管道命令操作符是:”|”,它只能处理经由前面一个指令传出的正确输出信息,对错误信息信息没有直接处理能力。然后,传递给下一个命令,作为标准的输入.

 基本格式: 指令1 | 指令2 | …

 【提醒注意】:

 1.管道命令只能处理前一条指令的正确输出,不能处理错误输出;
 2.管道命令的后一条指令,必须能够接收标准输入流命令才能执行。

 管道中的- 符号
  tar -cvf - /home | tar -xvf -

  tee命令
  可以重定向到多个目标

原文地址:https://www.cnblogs.com/zhaihongyu/p/12590832.html

时间: 2024-11-10 14:20:51

标准I/o重定向和管道的相关文章

Linux基础管理—— &quot; 标准IO及重定向及管道 &quot;

1.标准输入和输出 一般来说程序是由指令+数据组成:那么就不可避免的要读入和输出数据,即input和output. 打开的文件都有一个fd: file descriptor (文件描述符),可以在/proc/$$/fd中查看当前终端打开的文件数,一个文件描述符就是一个打开的文件. [[email protected] ~]#ll /proc/$$/fd total 0 lrwx------. 1 root root 64 Nov 26 12:27 0 -> /dev/pts/5 lrwx----

标准IO重定向和管道

标准I/O重定向和管道 1 标准输入和输出 程序:指令+数据 读入数据:Input 输出数据:Output 打开的文件都有一个fd:file descriptor(文件描述符) Linux给程序提供三种I/O设备 标准输入(STDIN) -0 默认接受来自终端窗口的输入 标准输出(STDOUT) -1 默认输出到终端窗口 标准错误(STDERR) -2 默认输出到终端窗口 范例:文件描述符 2 I/O重定向redirect I/O重定向:将默认的输入,输出或错误对应的设备改变,指向新的目标 2.

标准的I/O和管道使用方法

标准的I/O和管道 程序:指令+数据 系统自带了许多二进制程序,这些二进制程序共有两部分组成,一部分是指令,一部分是数据. 指令就是指二进制程序中的内容,然而程序的运行,也需要数据来支撑. 标准输出  STDOUT  -1   standard  output 输入命令所呈现在屏幕上的内容称之为标准输出,但是不是所有的命令都有标准输出.例如cd  rm后面不跟参数时,就没有标准输出. 标准输出的默认设备就是当前终端窗口. 标准错误  STDERR  -2  standard  error 当命令

10-IO重定向、管道及文本处理工具

bash的快捷键 Ctrl+l : 清屏 相当于clear命令: Ctrl+a:跳转至命令开始处: Ctrl+e:跳转至命令结尾处: ctrl+c :取消命令的执行 ctrl+u:删除命令行首至光标所在处的所有内容: Ctrl+k:删除光标所在处至命令行尾部的所有内容: 4 .bash的的I/O重定向及管道 程序: 指令+数据 读入数据:Input 输出数据:output 打开的文件都有一个fd: file descriptor (文件描述符) 标准输入:keyboard ,0 标准输出:mon

linux的输入输出重定向和管道

1. 在了解重定向之前,我们先来看看linux 的文件描述符. linux文件描述符:可以理解为linux为了跟踪打开文件,而分配的一个数字,(人是根据文件名追踪文件,系统则是根据文件描述符),这个数字有点类似c语言操作文件时候的指针,通过指针就可以实现文件的读写操作. 用户可以自定义文件描述符范围是:3-num,这个最大数字,跟用户的:ulimit –n 定义数字有关系,不能超过最大值. linux启动后,会默认打开3个文件描述符,分别是:标准输入standard input 0,正确输出st

linux中的重定向和管道的使用方法

一个程序运行就必须要有指令和数据或者说数据结构和算法.程序处理的数据来源和处理后存放在哪,是程序员必须要考虑额问题.每个程序都有读入数据和输出数据的需求,但是为了便捷,程序允许缺省输入和输出,也就是使用默认的输入输出.一般称之为标准输入和标准输出. 对于用户来说,访问文件是通过文件名来进行的,但对于内核来说则是一个非零整数,这个数字叫做文件描述符(file descriptor,fd),打开已存在的文件或新建一个文件时,内核会返回一个文件描述符,读写文件也需要使用文件描述符来指定带读写的文件.

linux重定向和管道的使用

bash的I/O重定向及管道 程序是由程序+指令组成:或者是数据结构+算法 程序数据来自哪里,处理的结果又存放于哪里? 程序必须能够读入输出然后经过加工来产生结果:程序获取的数据可以使数据也可以hi变量.数据.列表文件等等,程序生产出来的结果可以是变量.数据.列表.文件等.也就是说,程序都有读入数据和输入数据的需求. 读入数据:Input 输出数据:Output 通常对于程序来说,输入输出数据可以是键盘.鼠标.显示器等:当然有时候输入的数据是程序自身内部所具有的,但我们认为这些数据应该是通过外部

linux重定向及管道

1.bash的的I/O重定向及管道        程序:指令+数据            读入数据:Input            输出数据:Output        打开的文件都有一个fd: file descriptor (文件描述符) 标准输入:keyborad, 0        标准输出:monitor, 1        标准错误输出:monitor, 2 I/O重定向:改变标准位置 输出重定向:COMMAND > NEW_POS, COMMAND >> NEW_POS 

Linux目录结构、bash的基础特性、I/O重定向及管道

Linux目录结构 LSB(Linux StandardsBase)是一套核心标准,它保证了LINUX发行版同LINUX应用程序之间的良好结合规定了一系列标准,其中包括文件系统层级结构标准(FHS Filesystem Hierarchy Standard) Linux系统根目录下有众多子目录,这些目录都参照了FHS协定 / ├── bin ├── boot ├── dev ├── etc ├── home ├── lib ├── lib64 ├── lost+found ├── media ├