数据流与重定向

什么是数据流重定向?

使用数据流重定向

#在Ubuntu里不支持,不过18.04支持,'ll' 是'ls -l' 的缩写
ll /
#输出重定向
ll / > ~/rootfiles
#进行操作,并将输出转到rootfiles中
ll ~/rootfiles
#-------------------------------------------
• 标准输出流stdout默认情况下将数据输出到device
• 使⽤>将数据输出重定向到⽂件
• >默认为覆盖⽂件内容,如果要追加则用>>
  1. #替换成 ubuntu 代码
    sudo find /home -name .bashrc
    #查询结果:/home/yuez/.bashrc#总结一下#将错误信息重定向,就在命令最后加 2> errorfile(文件名)#将正确信息重定向,就在命令最后加 > infofile(文件名),如果和上边的一块用,就同时重定向两种信息,就是把信息分流了#要忽略错误信息,就在命令最后加 2> /dev/null
    
  2.  #修改文件 demofile的内容;并按Ctrl + d 结束输入cat > demofile#如果文件不存在则会创建;#如果文件存在:因为使用的是'>',所以会覆盖掉文件内容;使用'>>'则会继续添加#简单的查看文件内容cat demofile#输入重定向为 ~/.bashrc 文件cat > demofile < ~/.bashrc#这里使用了'>'会覆盖掉原有内容,若修改为'>>'则会在文件最后输入#输入重定向到键盘输入,这里的eof是结束时输入的字符cat > demofile << "eof"#换成'>>'就可以在文件后添加#-------------------------------• <:标准输⼊流默认从键盘输⼊• <<:⽤于设定结束输入的关键字• 这里的'~/'是返回当前用户的主目录,'.bashrc'是该目录下的一个文件
    

管道命令

管道命令执行原理

  • 管道命令的界定符号为”|”

  • 管道命令仅会处理stdout,对stderr会忽略

  • 管道命令必须要能够接收来⾃前⼀个命令的数据作为stdin

  • 说白了,管道命令是几个命令组合,中间用 | 分开,前一个的输出(stdout)作为后一个的输入(stdin),忽略掉所有的(stderr)

常用管道命令

选取命令 cut 和 grep

cut

值得注意的是 cut 命令是“竖着切”,即每一行都会切。如下:

grep

举个例子:

​ 首先 运行last命令,得到:

​ 之后开始用管道命令’grep‘进行选取:

​ 因为 grep -i 是不区分大小写,可以嵌套进其他的命令,故没有列出;

​ 其他的命令也可以嵌套,但是一旦嵌套上 ‘-c’ 就会只输出数字

排序命令sort、wc、uniq

sort

wc

实操发现 wc 后不跟命令的话就是默认三个都显示:

uniq

归档压缩和软件安装

Linux开发-数据流与管道相关推荐

  1. 【编撰】linux IPC 002 - 匿名管道PIPE和有名管道FIFO的概念和实例,以及应用比较

    前言:上一节提到IPC的概述,本一节,原文作者比较详细的讨论了,管道的概念和实例和使用场景: 原文作者:郑彦兴 (mlinux@163.com)国防科大计算机学院 http://www.ibm.com ...

  2. linux有名管道数据异常,Linux系统编程—有名管道

    ▋****1. 管道的概念 管道,又名「无名管理」,或「匿名管道」,管道是一种非常基本,也是使用非常频繁的IPC方式. 1.1 管道本质 管道的本质也是一种文件,不过是伪文件,实际上是一块内核缓冲区, ...

  3. C语言到嵌入式Linux开发项目指导

    C语言到嵌入式Linux开发项目指导 第一阶段C语言 1.常量与变量,数据类型,数据类型转换,数据输入与输出: 2.C语言运算符,C语言操作符,C语言表达式,表达式优先级: 3.C语言流程控制,分支, ...

  4. cmake 检查文件更新_2020年6月:Visual Studio对Linux开发平台的更新

    三项更新 通过使用Visual Studio 2019,你可以在一台远程Linux系统或者WSL(Windows Subsystem for Linux)上进行编译和调试C++工程,另外,你还可以使用 ...

  5. Linux链接文件、管道、重定向讲解

    Linux链接文件.管道.重定向讲解 --链接文件-- 硬链接:在inode表中记录一个条目,所有的元数据和原始文件元数据相同. ·相当于两个名字. ·删除原始文件,另一个条目也能够找数据本身. ·不 ...

  6. 【分享】4412开发板-嵌入式Linux开发须要掌握的基础知识和技能

    本文转自迅为电子论坛:http://www.topeetboard.com 1.Linux 基础 安装Linux操作系统 Linux文件系统 Linux经常使用命令 Linux启动过程具体解释 熟悉L ...

  7. 嵌入式Linux开发

    第1章 Linux操作系统简介 本章导读:本章首先对Linux发展简史进行简要介绍,然后对Linux内核进行了介绍,重点介绍了Linux内核的特点和功能,接着对Linux发行版进行介绍,并列举了一些典 ...

  8. 嵌入式Linux开发教程:Linux常见命令(上篇)

    摘要:这是对周立功编著的<嵌入式Linux开发教程>的第7期连载.本期刊载内容有关LinuxLinux常见命令中的导航命令.目录命令和文件命令.下一期将连载网络操作命令.安装卸载文件系统等 ...

  9. Linux进程通信——匿名管道、命名管道、管道的特性和共享内存

    Linux进程通信--匿名管道.命名管道.管道的特性和共享内存 一.管道 1.1 什么是管道? 1.2 匿名管道 <1> 匿名管道参数说明 <2> fork共享管道原理 < ...

  10. 熟悉linux开发环境_熟悉但“新”的分析开发方式

    熟悉linux开发环境 The Data, Solutions & Analytics (DSnA) team supports business teams within T-Mobile' ...

最新文章

  1. 昆虫大脑帮助AI解决导航难题
  2. 高级进阶:Azure DevOps搞定.NET Core编译版本号自增
  3. web api教程Java_WebApi项目创建CURD
  4. 想要写出好味道的代码,你需要养成这些好习惯!
  5. 菜鸟教程 php mysql_PHP MySQL 读取数据 | 菜鸟教程
  6. CentOS7环境下搭建ElasticSearch
  7. 无限极业绩_2019中国保健品行业典型企业分析——无限极、康宝莱、汤臣倍健...
  8. IE中如何屏蔽窗口关闭
  9. pandas 中文打印无法对齐_2天学会Pandas
  10. 如何运行 PPAS上的pgpool-II
  11. 朴素的UNIX之-进程/线程模型
  12. Java生成png文件字体不清晰_java 文本图片字体模糊优化处理
  13. 五人表决器课程设计单片机c语言,基于单片机的五人表决器的设计.doc
  14. Android性能优化—TraceView的使用
  15. MATLAB 多行注释
  16. 10-Transformation
  17. 互联网行业的一些英文简称(缩写),别人家一说你又懵了!
  18. matlab八分之一中点画圆算法,中点八分画圆算法
  19. Mac下关闭英文自动纠错
  20. java小游戏-飞翔的小鸟

热门文章

  1. 1222-周一开盘红红火火大涨的一天。EG,PVC,沪铜,国际铜,纯碱涨停
  2. 【组合优化】旅行商问题Traveling Salesman Problem(TSP)-概述
  3. STM32 - L4系列芯片手册: LTDC功能
  4. 【ruby】ruby图像处理模块“mini_magick”
  5. b站java开发好的up主_B站有哪些不错的UP主?
  6. 每次遇到浏览器主页被篡改的问题,就特别气愤加头疼
  7. python控制电机正反转_树莓派Python控制步进电机
  8. 论文阅读_TASE: Reducing Latency of Symbolic Execution with Transactional Memory
  9. 原创 | 以ETF为例——配对交易Python源码全公开
  10. c语言迭代埃特金加速算法,5-埃特金加速迭代算法