Here Document 是在Linux Shell 中的一种特殊的重定向方式,它的基本的形式如下

它的作用就是将两个 delimiter 之间的内容(Here Document Content 部分) 传递给cmd 作为输入参数。fish@mangos:~$ cat  First Line  > Second Line  > Third Line EOF  > EOF  First Line  Second Line  Third Line EOF

这里要注意几点

  • EOF 只是一个标识而已,可以替换成任意的合法字符

  • 作为结尾的delimiter一定要顶格写,前面不能有任何字符

  • 作为结尾的delimiter后面也不能有任何的字符(包括空格)

  • 作为起始的delimiter前后的空格会被省略掉

  • Here Document 不仅可以在终端上使用,在shell 文件中也可以使用,例如下面的here.sh 文件

使用 sh here.sh 运行这个脚本文件,会得到output.sh 这个新文件,里面的内容如下

转载于:https://blog.51cto.com/8068131/1536976

关于linux特殊重定向的理解相关推荐

  1. linux 输出重定向_linux学习笔记(实验楼) 实验12 数据流重定向

    一.实验介绍 1.1 实验内容 你可能对重定向这个概念感到些许陌生,但你应该在前面的课程中多次见过>或>>操作了,并知道他们分别是将标准输出导向一个文件或追加到一个文件中.这其实就是 ...

  2. Linux 输入输出重定向 2>/dev/null和>/dev/null 2>1和2>1>/dev/nul

    From:https://www.cnblogs.com/520playboy/p/6275022.html 2>/dev/null  和  >/dev/null 2>&1  ...

  3. 输出重定向Linux命令,Linux Shell重定向(输入输出重定向)精讲

    Linux Shell 重定向分为两种,一种输入重定向,一种是输出重定向:从字面上理解,输入输出重定向就是「改变输入与输出的方向」的意思. 那么,什么是输入输出方向呢?标准的输入输出方向又是什么呢? ...

  4. Linux Shell重定向Linux管道

    Linux Shell 重定向分为两种,一种输入重定向,一种是输出重定向:从字面上理解,输入输出重定向就是「改变输入与输出的方向」的意思. 标准的输入输出方向 输入方向就是数据从哪里流向程序.数据默认 ...

  5. linux 地址重定向,Linux重定向(输入输出重定向)详解

    我们知道,Linux 中标准的输入设备默认指的是键盘,标准的输出设备默认指的是显示器.而本节所要介绍的输入.输出重定向,完全可以从字面意思去理解,也就是: 输入重定向:指的是重新指定设备来代替键盘作为 ...

  6. Linux输入输出重定向

    Linux 输入输出重定向的示意图如上图所示. 执行command 的时候,默认情况下,会将标准输出,标准错误都输出到屏幕上去 标准输入默认是键盘输入,但是可以将文件定向到标准输入中,幻数为0 标准输 ...

  7. Linux之重定向命令

    Linux之重定向命令 1. 重定向命令的介绍 重定向也称为输出重定向,把在终端执行命令的结果保存到目标文件. 2. 重定向命令的使用 命令 说明 > 如果文件存在会覆盖原有文件内容,相当于文件 ...

  8. Linux 输入子系统原理理解(原创)

    linux    输入子系统原理理解(原创) 以前学了单独的按键设备驱动以及鼠标驱动,实际上,在linux中实现这些设备驱动,有一种更为推荐的方法,就是input输入子系统.平常我们的按键,触摸屏,鼠 ...

  9. linux网桥的简单理解和配置

    linux网桥的简单理解和配置 Linux网桥是linux虚拟网络设备之一.网上很多分析linux网桥的文章,例如代码层面的分析.这里不牵扯复杂的分析和配置,主要是面向虚拟机链接一个用途,小白我的备忘 ...

最新文章

  1. 获取java hashCode分布
  2. 70. Leetcode 701. 二叉搜索树中的插入操作 (二叉搜索树-基本操作类)
  3. boost 递归锁_c++/boost互斥量与锁
  4. Boost asio 官方教程简介
  5. 新农大计算机学院照片,【新生指南】小团带你逛校园(内附农大全景图~)
  6. dategurd oracle_Oracle之11g DataGuard
  7. vue-cli3.0项目的安装、创建和启动
  8. Scala的所有符号运算符都意味着什么?
  9. css 怎么设置盒子水平居中,用一段css实现盒子垂直水平居中方法(8种)-案例
  10. 字符串部分函数的实现
  11. kubernetes滚动更新
  12. 计算机java毕业设计选题汇总(2022)
  13. 程序设计的最基本的三种结构
  14. Arturia Sound Explorers Collection Belledonne现已上市
  15. js判断ipad pro设备
  16. 接口测试准备一、 网路基础 常用代理工具 charles使用 Android手机代理抓包
  17. Shift+鼠标右键没有:在此处打开命令窗口(W)
  18. 浪潮之颠二_读书笔记
  19. 【模拟集成电路】鉴频鉴相器设计(Phase Frequency Detector,PFD)
  20. 网络层协议 ——— IP协议

热门文章

  1. 上传图片时 , 返回 nginx 出现413 Request Entity Too Large 问题
  2. vue-router 手势滑动触发返回
  3. 配置Configuration Manager站点和层次架构(2)
  4. poj 2247 Humble Numbers
  5. IO之流程与buffer概览
  6. 像DW的应用源格式那样格式化VS里面的代码
  7. .net c# 序列化和反序列
  8. WPF与缓动(一) N次缓动
  9. 《高质量java程序设计》读书笔记之----异常处理(1)
  10. Android中ExpandableListView的使用