广告
返回顶部
首页 > 资讯 > 精选 >Bash脚本中怎么使用here文档将数据写入文件
  • 131
分享到

Bash脚本中怎么使用here文档将数据写入文件

2023-06-16 10:06:11 131人浏览 八月长安
摘要

这篇文章主要介绍“Bash脚本中怎么使用here文档将数据写入文件”,在日常操作中,相信很多人在Bash脚本中怎么使用here文档将数据写入文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Bash脚本中怎么

这篇文章主要介绍“Bash脚本中怎么使用here文档将数据写入文件”,在日常操作中,相信很多人在Bash脚本中怎么使用here文档将数据写入文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Bash脚本中怎么使用here文档将数据写入文件”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

 Bash脚本中怎么使用here文档将数据写入文件

here document(LCTT 译注:here 文档又称作 heredoc )不是什么特殊的东西,只是一种 I/O 重定向方式,它告诉 bash shell 从当前源读取输入,直到读取到只有分隔符的行。

这对于向 ftp、cat、echo、ssh 和许多其他有用的 linux/Unix 命令提供指令很有用。 此功能适用于 bash 也适用于 Bourne、Korn、POSIX 这三种 shell。

here 文档语法

语法是:

command <<EOFcmd1cmd2 arg1EOF

或者允许 shell 脚本中的 here 文档使用 EOF<<- 以自然的方式缩进:

command <<-EOF  msg1  msg2   $var on line EOF

或者

command <<'EOF' cmd1 cmd2 arg1 $var won't expand as parameter substitution turned off by single quotingEOF

或者 重定向并将其覆盖 到名为 my_output_file.txt 的文件中:

command <<EOF > my_output_file.txt mesg1 msg2 msg3 $var on $fooEOF

重定向并将其追加到名为 my_output_file.txt 的文件中:

command <<EOF >> my_output_file.txt mesg1 msg2 msg3 $var on $fooEOF

示例

以下脚本将所需内容写入名为 /tmp/output.txt 的文件中:

#!/bin/bashOUT=/tmp/output.txt echo "Starting my script..."echo "Doing something..." cat <<EOF >$OUT  Status of backup as on $(date)  Backing up files $HOME and /etc/EOF echo "Starting backup using rsync..."

你可以使用cat命令查看/tmp/output.txt文件:

$ cat /tmp/output.txt

示例输出:

 Status of backup as on Thu Nov 16 17:00:21 IST 2017 Backing up files /home/vivek and /etc/

禁用路径名/参数/变量扩展、命令替换、算术扩展

$HOME 这类变量和像 $(date) 这类命令在脚本中会被解释为替换。 要禁用它,请使用带有 'EOF' 这样带有单引号的形式,如下所示:

#!/bin/bashOUT=/tmp/output.txt echo "Starting my script..."echo "Doing something..."# No parameter and variable expansion, command substitution, arithmetic expansion, or pathname expansion is perfORMed on Word.  # If any part of word is quoted, the delimiter  is  the  result  of  quote removal  on word, and the lines in the here-document # are not expanded. So EOF is quoted as followscat <<'EOF' >$OUT  Status of backup as on $(date)  Backing up files $HOME and /etc/EOF echo "Starting backup using rsync..."

你可以使用 cat 命令查看 /tmp/output.txt 文件:

$ cat /tmp/output.txt

示例输出:

 Status of backup as on $(date) Backing up files $HOME and /etc/

关于 tee 命令的使用

语法是:

tee /tmp/filename <<EOF >/dev/nullline 1line 2line 3$(cmd)$var on $fooEOF

或者通过在单引号中引用 EOF 来禁用变量替换和命令替换:

tee /tmp/filename <<'EOF' >/dev/nullline 1line 2line 3$(cmd)$var on $fooEOF

这是我更新的脚本:

#!/bin/bashOUT=/tmp/output.txt echo "Starting my script..."echo "Doing something..." tee $OUT <<EOF >/dev/null  Status of backup as on $(date)  Backing up files $HOME and /etc/EOF echo "Starting backup using rsync..."

关于内存 here 文档的使用

这是我更新的脚本:

#!/bin/bashOUT=/tmp/output.txt ## in memory here docs ## thanks https://twitter.com/freebsdfrauexec 9<<EOF  Status of backup as on $(date)  Backing up files $HOME and /etc/EOF ## continueecho "Starting my script..."echo "Doing something..." ## do itcat <&9 >$OUT echo "Starting backup using rsync..."

到此,关于“Bash脚本中怎么使用here文档将数据写入文件”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Bash脚本中怎么使用here文档将数据写入文件

本文链接: https://www.lsjlt.com/news/283169.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Bash脚本中怎么使用here文档将数据写入文件
    这篇文章主要介绍“Bash脚本中怎么使用here文档将数据写入文件”,在日常操作中,相信很多人在Bash脚本中怎么使用here文档将数据写入文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Bash脚本中怎么...
    99+
    2023-06-16
  • 使用ByteArrayOutputStream实现将数据写入本地文件
    目录ByteArrayOutputStream将数据写入本地文件那来了解一下ByteArrayOutPutStream吧在表格输出时FileOutputStream的写入方法把读取的...
    99+
    2022-11-12
  • 使用Java怎么将字符串写入文本文件
    今天就跟大家聊聊有关使用Java怎么将字符串写入文本文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、Filewriter与File——-将字符串写入文本文件public&nbs...
    99+
    2023-05-30
    java 字符串
  • pandas怎么将数据写入csv文件
    在使用Pandas将数据写入CSV文件时,可以使用`to_csv()`方法。以下是具体的步骤:1. 导入Pandas库:```pyt...
    99+
    2023-09-15
    pandas
  • 怎么用重定向操作符和tee命令将文本写入Bash中的文件
    本篇内容主要讲解“怎么用重定向操作符和tee命令将文本写入Bash中的文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用重定向操作符和tee命令将文本写入Bash中的文件”吧!使用重定向运...
    99+
    2023-06-15
  • 【Python】使用pandas将数据写入excel文件中
    文章目录 前言一、pandas是什么?二、使用步骤1.引入库2.将数据写入到Excel中 总结 前言 本文主要简单介绍一下使用python的pandas库来将数据写入到excel文件...
    99+
    2023-09-01
    pandas python excel 经验分享 自动化
  • c语言怎么将数据写入文件
    在C语言中,可以使用`fprintf()`函数将数据写入文件。`fprintf()`函数的原型如下:```cint fprintf(...
    99+
    2023-08-18
    c语言
  • 如何使用ByteArrayOutputStream实现将数据写入本地文件
    这篇文章主要为大家展示了“如何使用ByteArrayOutputStream实现将数据写入本地文件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用ByteArrayOutputStream...
    99+
    2023-06-22
  • 怎么使用C语言将数字和字符等数据写入并输出到文本文件中
    这篇文章主要介绍“怎么使用C语言将数字和字符等数据写入并输出到文本文件中”,在日常操作中,相信很多人在怎么使用C语言将数字和字符等数据写入并输出到文本文件中问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么使...
    99+
    2023-07-02
  • 教你用python将数据写入Excel文件中
    目录一、导入excel表格文件处理函数二、创建excel表格类型文件三、在excel表格类型文件中建立一张sheet表单四、自定义列名五、将列属性元组col写进sheet表单中六、将...
    99+
    2022-11-13
  • 如何使用C语言将数字、字符等数据写入、输出到文本文件中
    目录1.首先需要声明一个文件指针变量2.接下来需要对这个指针变量进行初始化3.然后开始利用相应函数将数据写入文件4.最后一步,也是关键的一步总结最近在调试程序,想把过程中需要查看的数...
    99+
    2022-11-13
  • 怎么用python向文件中写入数据
    要向文件中写入数据,可以使用Python内置的open()函数来打开文件,并使用write()函数来向文件中写入数据。下面是一个简单...
    99+
    2023-10-20
    python
  • 使用Java如何将SQL脚本文件执行到数据库中
    使用Java如何将SQL脚本文件执行到数据库中?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。方式一:直接读取SQL脚本文件的内容,然后传递到SQL中。代码:RunSqlSe...
    99+
    2023-05-31
    java sql 数据库
  • python怎么向文件中写入数据
    在Python中,可以通过以下几种方式向文件中写入数据:1. 使用`open()`函数以写入模式打开文件,并利用`write()`函...
    99+
    2023-09-05
    python
  • Java怎么实现将类数据逐行写入CSV文件
    这篇文章主要介绍“Java怎么实现将类数据逐行写入CSV文件”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Java怎么实现将类数据逐行写入CSV文件”文章能帮助大家解决问题。代码自定义的CodeOb...
    99+
    2023-07-04
  • 怎么在phpmyadmin中使用日志文件写入数据
    今天就跟大家聊聊有关怎么在phpmyadmin中使用日志文件写入数据,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。前提:root权限,已经进入了ph...
    99+
    2022-10-18
  • php无法将中文数据写入数据库表怎么办
    本文操作环境:windows10系统、php 7&&mysql 5.0、thinkpad t480电脑。在学习PHP的过程中我们可能会遇到无法将中文数据插入数据表的情况,以及前台网页无法正确显示从数据库中获取的中文数据的情况...
    99+
    2018-05-29
    php 中文数据 数据表
  • 使用Spring Batch如何实现将txt文件写入数据库
    使用Spring Batch如何实现将txt文件写入数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、创建 Maven 项目,并在 pom.xml 中添加依赖<...
    99+
    2023-05-31
    springbatch txt文件
  • bash脚本编程中算术运算与文件查找怎么用
    bash脚本编程中算术运算与文件查找怎么用,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。算术运算相对于其他编程语言来说在bash里面不能直接以变量加上变量的形式...
    99+
    2023-06-09
  • java怎么往文件中追加写入数据
    在Java中,可以使用FileWriter类来往文件中追加写入数据。下面是一个示例:```javaimport java.io.Fi...
    99+
    2023-10-07
    java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作