1. 首先了解linux命令执行顺序

    • 通常情况下,终端只能执行一条命令,然后按下回车,那么执行多条命令呢

      顺序执行多条命令,可以用分号;
      cmd1;cmd2;cmd3
      条件执行多条命令,使用&&(前一个命令执行成功,即$?=0时,执行下一条命令,否则不执行)和||(前一个命令执行失败,既$?≠0时,执行下一条命令)
      cmd1&&cmd2||cmd3
      $?:上一次命令的返回结果,0为执行成功,不为0则为执行失败
  2. 然后了解下管道命令(pipe)
    • 管道是一种通信机制,用于进程间的通信(也可通过socket进行网络通信),表现出来的形式将前面的每一个进程的输出,直接作为下一个进程的输入
    • 管道命令仅能处理stdout,而error则会忽略
  3. 常见管道命令
    • cut、grep、sort、wc、uniq
    • tee:重定向,既能在屏幕输出,又能保存到文件中
    • tr、col、join、paste、expand、split
  4. mkfifo则可以创建命名管道
    • 什么是命名管道

      |(竖线)为管道,是两个进程之间的通信通道
      例如:ls|grep txt
      ls和grep由|分开,管道创建了程序之间的通信通道,将ls的输出作为输入传给grep 由mkfifo创建出来的就是一个命名管道
      例如:mkfifo pipe2
      pipe2就是一个命名管道。
    • 命名管道的作用
      可以将输出信道化到不同终端、
      例如:
      在第一个终端执行
      ls > pipe2
      在第二个终端执行
      cat < pipe2(或cat pipe2,是取一次。cat < pipe2是持续输入,只要有内容传到pipe2中,就会有内容输出)
      pipe2更像是一个临时存储的地方,使用cat pipe2取过内容之后,再执行cat pipe2 ,则不会有显示
    • 识别命名管道

      命名管道可以像正常文件一样访问,在文档类型可以看到为p
      [root@ricky01 ~]# ll pipe2
      prw-r--r-- 1 root root 0 Oct 16 14:53 pipe2
    • 也可以使用chmod设置权限
    • 删除就像正常文件一样使用rm删除即可

参考:

https://www.jianshu.com/p/9c0c2b57cb73

https://www.howtoing.com/linux-mkfifo-command

linux mkfifo命令基本用法的更多相关文章

  1. Linux tar命令高级用法——备份数据

    Linux tar命令高级用法——备份数据 2015-12-31 Linux学习 Linux上有功能强大的tar命令,tar最初是为了制作磁带备份(tape archive)而设计的,它的作用是把文件 ...

  2. [转帖]Linux date命令的用法(转)

    Linux date命令的用法(转) https://www.cnblogs.com/asxe/p/9317811.html 1.命令:date 2.命令功能:date 可以用来显示或设定系统的日期与 ...

  3. Linux find命令的用法实践

    一.find命令简介 Linux下find命令在目录结构中搜索文件,并执行指定的操作.Linux下find命令提供了相当多的查找条件,功能很强大.由于find具有强大的功能,所以它的选项也很多,其中大 ...

  4. Linux crontab命令 定时任务 用法详解以及no crontab for root解决办法

    最近系统服务器进行搬迁,又恰好需要使用定时任务运行程序,而我的程序主要使用PHP写的,然后总结了下定时任务的用法,但是在这里主要写的是关于crontab命令的用法,使用过程中遇到不少问题,例如no c ...

  5. Linux date命令的用法(转)

    1.命令:date 2.命令功能:date 可以用来显示或设定系统的日期与时间. 3.命令参数 -d<字符串>:显示字符串所指的日期与时间.字符串前后必须加上双引号: -s<字符串& ...

  6. linux useradd 命令基本用法

    在 Linux 中 useradd 是个很基本的命令,但是使用起来却很不直观.以至于在 Ubuntu 中居然添加了一个 adduser 命令来简化添加用户的操作.本文主要描述笔者在学习使用 usera ...

  7. Linux date命令的用法

    在linux shell编程中,经常用到日期的加减运算以前都是自己通过expr函数计算,很麻烦.其实date命令本身提供了日期的加减运算非常方便. 例如:得到昨天的时间date  --date=&qu ...

  8. 11.Linux date命令的用法

    date命令常的日常应用   修改时间 date -s “2008/05/23 19:20″ 打包文件 tar zcvf log-$(date +$F).gz /home/admin/logs 同步阿 ...

  9. 【转】Linux虚拟终端命令Screen用法详解

    转自 http://www.linuxidc.com/Linux/2013-07/87415.htm 在使用ssh或者telnet登录远程主机后,执行一些耗时的命令,如果此时ssh或者telnet中断 ...

随机推荐

  1. 现有 Vue.js 项目快速实现多语言切换的一种思路

    Web 项目多语言(i18n,即国际化)是比较常见的需求,常规的做法大概有以下几种: 每种语言单独开发页面,适用于 CMS 之类的网站 多语言文本和页面结构分离,运行时动态替换.适用于单页应用(SPA ...

  2. SpringBoot(20)---断言(Assert)

    SpringBoot(20)---断言(Assert) 我们在写单元测试的时候,除了接口直接抛异常而导致该单元测试失败外,还有种是业务上的错误也代表着该单元测试失败.好比我们在测试接口的时候, 该接口 ...

  3. docker 部署 zabbix

    docker部署zabbix   我相信大家都已经会再物理机上跑zabbix并且监控了,那么有没有想过在docker中跑zabbix?下面咱们来看看如何在docker中搭建zabbix并且监控 部署环 ...

  4. VC 编译 MATLAB 的 mex 文件

    VC 编译 MATLAB 的 mex 文件mex 文件是 MATLAB 调用其他程序设计语言程序或算法的接口.在 Windows 环境中,mex 文件是扩展文件名为 DLL 的动态链接库,可以在 m ...

  5. Spring 标签纸property

    转载自https://www.cnblogs.com/zzb-yp/p/9968849.html Spring中XML文件配置Bean的简单示例,如下: <bean id="car&q ...

  6. 部署Go语言程序的N种方式

    部署Go语言项目 本文以部署 Go Web 程序为例,介绍了在 CentOS7 服务器上部署 Go 语言程序的若干方法. 独立部署 Go 语言支持跨平台交叉编译,也就是说我们可以在 Windows 或 ...

  7. Windows批处理(cmd/bat)常用命令学习

    前言 批处理文件(batch file)包含一系列 DOS命令,通常用于自动执行重复性任务.用户只需双击批处理文件便可执行任务,而无需重复输入相同指令.编写批处理文件非常简单,但难点在于确保一切按顺序 ...

  8. Processing 网格纹理制作(棋盘格)使用pixel() set()像素点绘制方式

    接上 我们趁热打铁,紧接上一回的棋盘格绘制,来挖掘一些不同绘制思路,使用pixel()函数来绘画.这是一个以每个像素点作为对象来绘制的思路,而不是以图形的方式来填充.这就改变了绘画思路.实际上,Pro ...

  9. 这么设计,Redis 10亿数据量只需要100MB内存

    本文主要和大家分享一下redis的高级特性:bit位操作. 本文redis试验代码基于如下环境: 操作系统:Mac OS 64位 版本:Redis 5.0.7 64 bit 运行模式:standalo ...

  10. 【小白学PyTorch】15 TF2实现一个简单的服装分类任务

    [新闻]:机器学习炼丹术的粉丝的人工智能交流群已经建立,目前有目标检测.医学图像.时间序列等多个目标为技术学习的分群和水群唠嗑的总群,欢迎大家加炼丹兄为好友,加入炼丹协会.微信:cyx64501661 ...