`
haierboos
  • 浏览: 436597 次
文章分类
社区版块
存档分类
最新评论

Linux入门基础 #9:管道及重定向

 
阅读更多



本文出自 http://blog.csdn.net/shuangde800

---------------------------------------------------------------------------------



不要重复发明轮子


开源文化的核心理念之一就是不要重复发明轮子,很多开源软件都是现有软件,代码和功能的重新组合,就好像通过零件装配机器一样,源代码的开放和共享让这成为了可能,同时也大大提高了效率和生产率。



管道和重定向

在Linux系统中,大多数命令都很简单,很少出现复杂功能的命令,每个命令往往只实现和一个或几个很简单的功能,我们可以通过将不同功能的命令组合在一起使用,以达到某个复杂功能的目的。

在Linux中,几乎所有命令返回数据都是纯文本的(与因为命令都是运行在CLI下),而纯文本形式的数据又是绝大多数命令的输入格式,这就让多命令协作成为可能。

Linux的命令行为我们提供了管道和重定向机制,多命令协作就是通过管道和重定向完成的。



命令行shell的数据流有以下定义:
名称 说明 编号 默认
stdin 标准输入 0 键盘
stdout 标准输出 1 终端
stderr 标准错误 2 终端
命令通过stdin接收参数或数据,通过stdout输出结果或通过stderr输出错误。


通过管道和重定向我们可以控制CLI的数据流

重定向:
关键字 定义 例子
> 将stdout重定向到文件(覆盖)
echo "hello world" > outfile
ls -l > outfile
>> 将stdout重定向到文件(追加)
echo "hello world" >> outfile
date >> outfile
2> 将stderr重定向到文件(覆盖) ls -l nofile 2> outfile
2>&1 将stderr与stdout结合 ls nofile > outfile 2>&1
< 重定向stdin
grep keyword < /etc/passwd,
在passwd文件中找有关键字keyword的行输出


管道:
|
将一个命令的stdout作为
另一个命令的stdin
ls -l | grep keyword
find / -user shuangde 2 > /dev/null| grep Video
/dev/null所有输出放到这里都会被自动丢弃,就像垃圾桶一样

管道通常是用来组合不同的命令,以实现一个复杂的功能
重定向通常用来保存某命令的输出信息或错误信息,可以用来记录执行结果或保存错误信息到一个指定的文件


分享到:
评论

相关推荐

    Linux入门基础视频.zip

    目录网盘文件永久链接 1.Linux安装 2.Linux基本操作 3.Linux磁盘及文件系统管理 4.Linux下如何获取帮助 5.用户及权限基础 ...7.Linux管道、重定向及文本处理 8.Linux系统启动详解 9.Linux软件管理基础:RPM、YUM

    标准IO重定向和管道

    Linux基础入门,适合运维小白

    Linux程序设计中文第4版.part2

     2.4 管道和重定向  2.4.1 重定向输出  2.4.2 重定向输入  2.4.3 管道  2.5 作为程序设计语言的shell  2.5.1 交互式程序  2.5.2 创建脚本  2.5.3 把脚本设置为可执行  2.6 shell的语法 ...

    Linux程序设计中文第4版.part1

     2.4 管道和重定向  2.4.1 重定向输出  2.4.2 重定向输入  2.4.3 管道  2.5 作为程序设计语言的shell  2.5.1 交互式程序  2.5.2 创建脚本  2.5.3 把脚本设置为可执行  2.6 shell的语法  2.6.1 ...

    Linux程序设计中文第4版.part3

     2.4 管道和重定向  2.4.1 重定向输出  2.4.2 重定向输入  2.4.3 管道  2.5 作为程序设计语言的shell  2.5.1 交互式程序  2.5.2 创建脚本  2.5.3 把脚本设置为可执行  2.6 shell的语法 ...

    LINUX 初级管理

    linux培训课件,较为全面的介绍linux的起源与linux系统的基本操作,适合入门者学习。 主要介绍了: shell及shell命令语法和特殊字符 常用命令 管道和重定向 vi编辑器 linux用户,组和权限 管理linux文件系统 ...

    Linux从入门到实战学习教程-8Shell基础.pptx

    内容概要: 8.1 接触Shell 8.2 Shell变量 8.3 传递参数 8.4 算术运算符 8.5 重定向输入输出 8.6 管道

    2020Linux云计算运维工程师课程.zip

    04-年薪30万Lnux云计算课程nux重定向与管道技术及用户管理命令 05年薪30万nux云计算课程文件权限管理与文本编辑工具vm 06-年薪30万Lnux云计算课程文本处理命令与文本搜索工具grep 07年薪30万Lnux云计算课程hel脚本...

    Linux 命令入门文档.zip

    - 学习 Bash 的基础知识。具体地,在命令行中输入 `man bash` 并至少全文浏览一遍; 它理解起来很简单并且不冗长。其他的 shell 可能很好用,但 ...- 学会使用 `&gt;` 和 `来重定向输出和输入,学会使用 `|` 来重定向管道。

    Linux程序设计 第4版.haozip01

    2.4 管道和重定向 18 2.4.1 重定向输出 18 2.4.2 重定向输入 19 .2.4.3 管道 19 2.5 作为程序设计语言的shell 20 2.5.1 交互式程序 20 2.5.2 创建脚本 21 2.5.3 把脚本设置为可执行 22 2.6 shell的语法 23 ...

    Linux程序设计 第4版.haozip02

    2.4 管道和重定向 18 2.4.1 重定向输出 18 2.4.2 重定向输入 19 .2.4.3 管道 19 2.5 作为程序设计语言的shell 20 2.5.1 交互式程序 20 2.5.2 创建脚本 21 2.5.3 把脚本设置为可执行 22 2.6 shell的语法 23 ...

    redhat linux教材20课程学习文档

    3.6.1 管道和重定向(“|、&gt;、&gt;&gt;、&lt;”) 3.6.2 进程管理(fg/bg、ctrl-Z、 &、nohup) 3.6.3 模式匹配 3.6.4 特殊字符 3.7 环境变量 3.7.1 环境变量的概念 3.7.2 相关的命令 第四章 vi使用 4.1 vi 编辑器简介 4.1.1 ...

    awk入门到精通.pdf

    例如 : 文件编辑, 文件复制 及 管道, 输入/输出重定向 等概念 [b.] C 语言的基本语法及流程控制指令. (awk 指令并不多, 且其中之大部分与 C语言中之用法一致, 本手册中对该类指令之语法及特性 不再加以繁冗的说明, ...

    UNIX操作系统教程 张红光

    第1章绪论.1 1.1操作系统概述1 1.1.1建立操作系统的目标1 1.1.2操作系统是用户与计算机的接口1 1.1.3操作系统是资源管理器2 1.2UNIX...9 第2章UNIX基本概念及入门技术10 2.1UNIX系统基本常识10 2.1.1两种前端机10 /&gt;...

    Shell脚本专家指南

    第9章 数据重定向 9.1 避免错误 9.2 普通重定向 9.3 访问用户指定的文件句柄 9.4 从shell中访问描述符 第10章 管道输入读 10.1 逐行选项1 10.2 逐行选项2 10.3 逐行选项3 10.4 逐行选项4 10.5 直接管道读 10.6 逐字...

Global site tag (gtag.js) - Google Analytics