[置顶] 学习鸟哥的Linux私房菜笔记(6)——过滤器、输入输出及管道
一、过滤器
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)——过滤器、输入输出及管道的更多相关文章
- 学习鸟哥的Linux私房菜笔记(1)——Linux系统入门
今天在阿里云申请了一个centos系统的云服务器,以前对linux了解的只是皮毛,记了几个命令还给忘了,整了半天都弄不好,作为一个做过javaweb开发的coder实在是惭愧啊,决定从今天开始学习Li ...
- 学习鸟哥的Linux私房菜笔记(17)——Linux引导流程
一.系统引导流程 第一步:固件fireware(CMOS/BIOS)--POST加点自检(与操作系统无关) 这一步主要是检查硬盘等硬件是否能正常工作 CMOS:是固化在主板上,详细:http://sc ...
- 学习鸟哥的Linux私房菜笔记(16)——Ubuntu中建立ftp服务
1.安装vsftpd,如下图所示:sudo apt-get install vsftpd 2.查看本机是否可以连接ftp 如上图所示,发现login failed了,怎么办呢?我们来看看vsftpd的 ...
- 学习鸟哥的Linux私房菜笔记(15)——文件系统
一.文件结构 为了能在设备上存储与读取文件,我们需要在分区上创立文件系统 文件系统记录目录与文件我们称之为文件结构 每一个文件系统在Linux里都被解释成由一个根目录为起点的目录结构 Linux将各个 ...
- 学习鸟哥的Linux私房菜笔记(14)——硬件配置与管理
一.设备文件 Linux沿袭了Unix的风格,将所有设备看成一个文件 设备文件分为两种: 块设备文件(b):比如硬盘.光驱 字符设备文件(c):比如串口.键盘 设备文件一般存放在/dev目录下 二.常 ...
- 学习鸟哥的Linux私房菜笔记(13)——用户管理
一.检查用户身份 用户可以使用下列指令了解用户身份 who :查询当前在线的用户 groups :查询用户所属组 id :显示当前用户信息 finger :查询用户信息 二.添加用户 用指令添加命令 ...
- 学习鸟哥的Linux私房菜笔记(9)——bash1
一.Shell简介 Shell :命令行解释器,是用户与系统沟通时的媒介 在Unix系统中有各种Shell, Linux采用bash为其默认shell 系统可以使用的shell记录在 /etc/she ...
- 学习鸟哥的Linux私房菜笔记(8)——文件查找与文件管理2
四.压缩 gzip, gunzip Linux标准压缩工具 对文本文件可以达到75%的压缩率 compress, uncompress 旧的Unix压缩工具 bzip2, bunzip2 更新的Lin ...
- 学习鸟哥的Linux私房菜笔记(6)——过滤器、输入输出及管道
一.过滤器 Linux中的应用工具分为三种: 交互工具 过滤器 编辑器 能够接受数据,过滤再输出的工具,称之为过滤器 对过滤器和进程,存在着输入源与输出对象 二.输入.输出.重定向 输入:过滤器的数据 ...
随机推荐
- quick-x 2.2.5 DragonBones 某些fla导出使用后player卡死
1 2 3 4 5 6 7 8 9 10 11 --test 龙骨 self._db = dragonbones.new({ skeleton="game ...
- WEB标准:标准定义、好处、名词解释、常用术语、命名习惯、浏览器兼容、代码书写规范
1. WEB标准是什么? “WEB标准”是一系列标准的总称.一般的误区经常把WEB标准说成DIV+CSS.准确的说法应该是:采用W3C推荐的WEB标准中的XHTML1.1结合CSS2.0 样式表制作页 ...
- HTML5 自定义属性 data-*介绍
在HTML5之前HTML4我们也可以自定义属性通过setAttribute去设置或者直接写在HTML标签里面那么HTML5新增data-*(*可以替换成你喜欢的任意名字)属性有什么用呢? 更便的捷操作 ...
- node.js入门(三)调式
1.安装调式工具 打开命令行工具,输入以下内容,然后回车. npm install -g node-inspector 等待安装成功呢后,我们就可以使用 node-debug 文件名 这个命令来调式我 ...
- 为什么JavaScript函数中的参数前面不能加var
首先这里是JavaScript的语法规则. 其次在调用function()函数的时候参数时外部传入的.在传入之前就已经被声明了.没必要在函数参数里声明. 如果想要在函数里用新的参数 function( ...
- jquery-练习-折叠效果
<!DOCTYPE html > <html xmlns="http://www.w3.org/1999/xhtml"> <head> < ...
- Python之路第七天,基础(9)-面向对象(上)
面向对象的编程思想 回想 我们所学过的编程方法: 面向过程:根据业务逻辑从上到下写堆叠代码. 函数式编程:将重复的代码封装到函数中,只需要写一遍,之后仅调用函数即可. 面向过程编程最易被初学者接受,其 ...
- windows 激活远程桌面服务
- glusterFS的缓存测试
众所周知,glusterFS在客户端有缓存,缓存目的在于提高读性能.那么多个客户端同时对文件进行读写,会不会存在client缓存与server文件不一致的情况?比如client A和client B读 ...
- Train Problem I
问题陈述: 杭州电子科技大学HANGZHOU DIANZI UNIVERSITY Online Judge Problem - 1022 问题解析: 栈(stack)的简单应用 代码详解: #incl ...