一、过滤器

Linux中的应用工具分为三种:

交互工具

过滤器

编辑器

能够接受数据,过滤再输出的工具,称之为过滤器

对过滤器和进程,存在着输入源与输出对象

二、输入、输出、重定向

输入:过滤器的数据来源

——标准输入stdin(0):默认是键盘

输出:过滤器的数据去向

——标准输出stdout(1):默认是终端屏幕

错误输出:报错讯息与标准输出走不同的I/O通道

——标准错误输出stderr(2):默认是终端屏幕

重定向:标准输入、输出与错误输出,都可以用特定符号改变数据来源或去向

三、输入重定向

使用" < "来重定向输入源

大多数工具都会以其后的文件名为输入源

有一些过滤器一定需要添加 < 以明确输入源

cmmond  <  file (将原本需要键盘输入的通过文件读取)

如上面,将.pash_profile中的所有大写字符改成小写字符

四、从当前文档输入

使用  <<  让系统将一次键盘的全部输入,先送入虚拟的”当前文档“,然后一次性输入

需要一对字母、符号或字符串作为起始终结标识符

可以选择任意符号作为起始终结标识符

五、输出重定向

使用 > 改变数据输出目标

例如:ls -l  > listfile

将当前目录下的文件以长模式显示,然后写入listfile文件

文件已有内容会被全部消除

六、覆盖与追加

使用 >进行输出重定向,文件的原内容会被覆盖

ls -l > listfile

使用 >>可以将输出追加入文件

ls -l >> listfile

七、错误输出重定向

系统错误与标准输出使用的I/O管道不同

默认情况下,系统报错会显示到终端屏幕上

使用 2 >将错误讯息重定向到一个文件

find / -type s 2 > /dev/null

使用
2 >> 将错误讯息追加入一个文件

find / -name passwd 2>> results

八、双重输出重定向

使用 >和 2>
可以将一次操作的正确、错误输入,被单独地送到不同的地方:

find / -perm -2 2> error > results

使用&>将所有输入都送向同一个地方:

find / -perm +6000 > file

另一种方式

九、管道

使用 |将前一个过滤器的输出直接送入后一个过滤器的输入

ls -l
| grep pass

允许多重管道

注意管道前过滤器的输出与管道后过滤器的输入数据类型匹配

十、重定向、管道的常用范例

ls -l
| more

分屏显示当前目录下的文件

cat
< filea > fileb

拷贝filea到fileb

cat file.* > file

将数个小文件合并成一个文件

学习鸟哥的Linux私房菜笔记(6)——过滤器、输入输出及管道的更多相关文章

  1. 学习鸟哥的Linux私房菜笔记(1)——Linux系统入门

    今天在阿里云申请了一个centos系统的云服务器,以前对linux了解的只是皮毛,记了几个命令还给忘了,整了半天都弄不好,作为一个做过javaweb开发的coder实在是惭愧啊,决定从今天开始学习Li ...

  2. [置顶] 学习鸟哥的Linux私房菜笔记(6)——过滤器、输入输出及管道

    一.过滤器 Linux中的应用工具分为三种: 交互工具 过滤器 编辑器 能够接受数据,过滤再输出的工具,称之为过滤器 对过滤器和进程,存在着输入源与输出对象 二.输入.输出.重定向 输入:过滤器的数据 ...

  3. 学习鸟哥的Linux私房菜笔记(17)——Linux引导流程

    一.系统引导流程 第一步:固件fireware(CMOS/BIOS)--POST加点自检(与操作系统无关) 这一步主要是检查硬盘等硬件是否能正常工作 CMOS:是固化在主板上,详细:http://sc ...

  4. 学习鸟哥的Linux私房菜笔记(16)——Ubuntu中建立ftp服务

    1.安装vsftpd,如下图所示:sudo apt-get install vsftpd 2.查看本机是否可以连接ftp 如上图所示,发现login failed了,怎么办呢?我们来看看vsftpd的 ...

  5. 学习鸟哥的Linux私房菜笔记(15)——文件系统

    一.文件结构 为了能在设备上存储与读取文件,我们需要在分区上创立文件系统 文件系统记录目录与文件我们称之为文件结构 每一个文件系统在Linux里都被解释成由一个根目录为起点的目录结构 Linux将各个 ...

  6. 学习鸟哥的Linux私房菜笔记(14)——硬件配置与管理

    一.设备文件 Linux沿袭了Unix的风格,将所有设备看成一个文件 设备文件分为两种: 块设备文件(b):比如硬盘.光驱 字符设备文件(c):比如串口.键盘 设备文件一般存放在/dev目录下 二.常 ...

  7. 学习鸟哥的Linux私房菜笔记(13)——用户管理

    一.检查用户身份 用户可以使用下列指令了解用户身份 who :查询当前在线的用户 groups :查询用户所属组 id :显示当前用户信息 finger :查询用户信息 二.添加用户 用指令添加命令 ...

  8. 学习鸟哥的Linux私房菜笔记(9)——bash1

    一.Shell简介 Shell :命令行解释器,是用户与系统沟通时的媒介 在Unix系统中有各种Shell, Linux采用bash为其默认shell 系统可以使用的shell记录在 /etc/she ...

  9. 学习鸟哥的Linux私房菜笔记(8)——文件查找与文件管理2

    四.压缩 gzip, gunzip Linux标准压缩工具 对文本文件可以达到75%的压缩率 compress, uncompress 旧的Unix压缩工具 bzip2, bunzip2 更新的Lin ...

随机推荐

  1. 一些常用JS函数和技巧总结

    1.JS原生函数parseInt(),返回字符串的第一个数字,默认是十进制. 2.!!data.success  //强制转换成布尔类型

  2. JIRA6.3.6 安装汉化破解指南

    JIRA6.3.6 安装汉化破解指南 近期试着安装了下JIRA,碰到了些问题.特记录下来,供后来者使用: 1.常规安装 1.1. 下载并安装jira 从官网下载atlassian-jira-6.3.6 ...

  3. 硬件——STM32 , 软件框架

    单片机应用程序的框架大概有三种: 1,简单的前后台顺序执行程序. 2,时间片轮询法. 3,应用操作系统. 下面我们主要来讲解时间片轮询法: 在这里我们先介绍一下定时器的复用功能.就是使用1个定时器,可 ...

  4. Debian 上创建新的用户

    Debian 上创建新的用户 使用Gnome的窗口界面创建 使用Linux的命令创建 添加用户: useradd -d /home/your_username -m your_username 添加密 ...

  5. POJ 1163 The Triangle 简单DP

    看题传送门门:http://poj.org/problem?id=1163 困死了....QAQ 普通做法,从下往上,可得状态转移方程为: dp[i][j]= a[i][j] + max (dp[i+ ...

  6. IOS8刷机之后

    用的4s,明显感觉卡- =BUG也非常多,点击设置都闪退..有些应用打不开. 不建议非开发人员尝试. 眼下发现的bug有:同一时候关闭多个应用会造成应用无法关闭. 常常重新启动.耗电没留意.

  7. [Angular2 Router] Resolving route data in Angular 2

    From Article: RESOLVING ROUTE DATA IN ANGULAR 2 Github If you know Anuglar UI router, you must know ...

  8. Android使用BitmapFactory.Options解决加载大图片内存溢出问题

    由于Android对图片使用内存有限制,若是加载几兆的大图片便内存溢出.Bitmap会将图片的所有像素(即长x宽)加载到内存中,如果图片分辨率过大,会直接导致内存溢出(java.lang.OutOfM ...

  9. windows go 安装

    go的安装很简单,下载go的msi文件 这里提供go1.9的msi下载链接 https://www.lanzous.com/i2gb54d 直接全部next就行,默认安装在了c盘的go 然后配置环境变 ...

  10. 【2016 Summary】为过往补课、为将来夯实

    前言 看了CSDN上非常多"我的2016"年终总结,也就不能免俗地来写一波.按着时间轴捋一捋这过去一年的经过,也算是这元旦假期总一个午后的休闲时光了.(结果没想到的是午饭前開始写的 ...