首页 > 系统相关 >Linux heredoc

Linux heredoc

时间:2023-09-26 13:45:22浏览次数:34  
标签:定界符 重定向 heredoc cat Linux txt 输入

heredoc(也称为 "here document")是一种特殊的重定向方式,允许从 shell 中直接提供多行输入给一个命令,而不是从文件或其他类型的输入源

heredoc语法:

command <<DELIMITER
line_1
line_2
...
DELIMITER

说明:

DELIMITER表示定界符,这个字符可以随意定义,一般使用EOF表示结束,在文本块中在单独一行输入这个定界符,此时就会结束输入,会将已经输入的多行内容重定向到某个文件或命令中。

例如: cat <<EOF >>example.txt

  1. cat <<EOF 开始了一个 heredoc 代码块,这允许你输入一个文本块直到你输入定界符 EOF 为止。这整个文本块都会被当作 cat 的输入

  2. cat 命令的主要功能是显示其输入的内容。如果没有重定向,这些内容默认会被输出到屏幕(标准输出)

  3. >>example.txt 重定向了 cat 的输出,使其不是显示在屏幕上,而是追加到 example.txt 文件中

heredoc两种格式

格式一:给定界符加上引号

# 单引号和双引号都可以
command <<"DELIMITER"
line_1
line_2
...
DELIMITER

特点:文本块中的变量不会被展开,且所有的反斜线转义都会被视为普通字符。

例如:

格式二:不给定界符加上引号

command <<"DELIMITER"
line_1
line_2
...
DELIMITER

特点:文本块中的变量会被替换为具体的值,且反斜线表示转义,不会视为一个普通字符

标签:定界符,重定向,heredoc,cat,Linux,txt,输入
From: https://www.cnblogs.com/heyongshen/p/16599130.html

相关文章

  • Linux_网络基本命名行
    Linux网络基本命令ifconfig#是linux中用于显示或配置网络设备(网络接口卡)的命令,英文全称是networkinterfacesconfiguring ping#指令会使用ICMP(InternetControlMessageProtocol)传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得......
  • AMD 下一代 Zen 5 CPU 获得 Linux 6.6 的初步支持
    导读在以前的报道中,我们曾多次强调AMD在 Linux 中发布了对基于Zen5CPU架构的”Family1Ah”处理器的支持。现在,该公司也确保了与Linux6.6的完全兼容,这表明了其对该平台的专注。AMD的下一代Zen5CPU继续在Linux6.6中获得支持,最新补丁提供了温度监控和ED......
  • Linux CentOS 7.x离线安装PostgreSQL操作手册
    一、准备环节rpm-qa|greppostgres检查PostgreSQL是否已经安装rpm-qal|greppostgres检查PostgreSQL安装位置postgresql-12.2.tar.gz二、Pgsql数据库安装下载下载地址:http://www.postgresql.org/ftp/source/选择你你需要的版本,本次安装12.2的版......
  • 欧拉系统、CentOS系统、Linux 系统。。。初始化磁盘,设置动态扩容
    欧拉系统、CentOS系统、Linux系统。。。初始化磁盘,设置动态扩容初始化磁盘,设置动态扩容登录root用户查看磁盘fdisk-l查看磁盘格式化磁盘,将磁盘设置成动态扩容格式fdisk/dev/vdc创建分区fdisk-l查看到/dev/vdc磁盘依次输入np回车回车回车t......
  • Linux下的网络抓包tcpdump
    tcpdump[-AdDefIJKlLnNOpqRStuUvxX][-Bbuffer_size][-ccount][-Cfile_size][-Grotate_seconds][-Ffile][-iinterface][-jtstamp_type][-mmodule][-Msecret][-Q|-Pin|out|inout][-rfile][-ssnaplen][-Ttype][-wfile......
  • Linux字符画最佳工具jp2a简单教程【转】
    转自:Linux字符画最佳工具jp2a简单教程|Linux区jp2a应该是Linux下最好用的字符画生成工具了,它能自定义字符将具体的jpg图片生成一片字符画,比如下面这样:用法也很简单:jp2a--chars=Fre.--size=150x60file.jpg再复杂一点:jp2a--chars=ascirt.--colors--border--size=160x......
  • linux进程相关
      查看进程运行时间ps-eopid,etime,cmd|grep180600180600329-19:33:44java-jarwxproject-1-SNAPSHOT.jar-e:显示所有进程,包括没有终端的进程。-opid,etime,cmd:指定输出的格式,其中pid是进程ID,etime是运行时间,cmd是进程的命令行。输出中的ELAPSED列显......
  • Linux系统之安装MySQL8.0版本
    一、MySQL介绍1.1MySQL简介MySQL8.0是最新版本的MySQL数据库管理系统,是一种关系型数据库管理系统,由Oracle公司开发和维护。MySQL8.0带来了一系列新特性,包括多个性能提升,更好的安全性和扩展性,以及新的管理功能。1.2MySQL特点更好的性能:MySQL8.0提供了对于大型查......
  • 优化Linux服务器
    正常使用环境下的Linux服务器有精准、稳定、高效、安全等需求,其优化也是有着很多的窍门。本文分享了九条平时进行Linux服务器优化的经验,内容涉及邮件服务器、Web服务器、网络配置、内存管理等方面1时间同步正常使用环境下的服务器对时间的要求是精准的,我的邮件服务器的dovecot服务,......
  • Linux-Stream内存带宽及MLC内存延迟性能测试方法
    1、Stream内存带宽测试  Stream是业界主流的内存带宽测试程序,测试行为相对简单可控。该程序对CPU的计算能力要求很小,对CPU内存带宽压力很大。随着处理器核心数量的增大,而内存带宽并没有随之成线性增长,因此内存带宽对提升多核心的处理能力就越发重要。Stream具有良好的空间局部......