什么是EOF!!在 bash 脚本中?

2024-01-04

有一个命令我不明白:

custom_command << EOF!!

我想问什么是EOF!!在 bash 脚本中。我确实用google找到了EOF,但是google会忽略“!!”自动,所以我找不到 EOF!!。

我知道文件结尾标记,但我不完全知道“!!”的含义。在脚本中。这是一个强制某些东西做类似 vim 的 wq! 的标记吗? ?

另外,我们为什么以及何时应该使用 EOF!而不是 EOF?


在命令行上,!!将扩展到最后执行的命令。 Bash 将为您打印该行:

$ ls
a.txt  b.txt
$ cat <<EOF!!
cat <<EOFls
>

但在脚本中,默认情况下禁用历史扩展,因此感叹号是单词的一部分。

#! /bin/bash
ls
cat <<EOF!!
echo 1
EOFls
echo 2

生产:

a.txt  b.txt
script.sh: line 7: warning: here-document at line 3 delimited by end-of-file (wanted `EOF!!')
echo 1
EOFls
echo 2

要在脚本中启用历史记录和历史记录扩展,请添加以下行:

set -o history
set -H
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是EOF!!在 bash 脚本中? 的相关文章

  • CMake 链接 glfw3 lib 错误

    我正在使用 CLion 并且正在使用 glfw3 库编写一个程序 http www glfw org docs latest http www glfw org docs latest 我安装并正确执行了库中的所有操作 我有 a 和 h 文
  • 使用 shell 脚本将行附加到 /etc/hosts 文件

    我有一个新的 Ubuntu 12 04 VPS 我正在尝试编写一个安装脚本来完成整个 LAMP 安装 我遇到问题的地方是在 etc hosts文件 我当前的主机文件如下所示 127 0 0 1 localhost Venus The fol
  • “/bin/bash -l”无效选项

    好吧 我正在尝试在我们的超级计算机上运行隐藏为一项作业的串行 MPI 作业 主要提交脚本基本上如下所示 bin bash l PBS l nodes 4 ppn 8 walltime 24 00 00 cat PBS NODEFILE un
  • 如何设置 tmux 在启动时打开指定的窗口?

    如何设置 tmux 使其在启动时打开指定的窗口 您可以编写一个小 shell 脚本来启动 tmux 以及所需的程序 我在一个名为 dev tmux 的 shell 脚本中包含以下内容 开发环境 bin sh tmux new session
  • 从 Xlib 转换为 xcb

    我目前正在将我的一个应用程序从 Xlib 移植到 libxcb 但在查找有关我有时使用的 XInput2 扩展的信息时遇到了一些麻烦 libxcb 中有 XInput2 实现吗 如果是的话 在哪里可以找到文档 目前我在使用此功能时遇到问题
  • Bash - 在与当前终端分开的另一个终端中启动命令的新实例

    我有一个简单的 bash 脚本 test sh 设置如下 bin bash args if args 0 check capture then watch n 1 ls lag home user capture0 watch n 1 ls
  • 在 bash 脚本中检测鼠标点击

    我想知道如何在后台运行 bash 脚本 每当用户单击鼠标时该脚本都会执行某些操作 即运行脚本或命令或其他任何内容 即使终端关闭 我也希望它继续运行 有任何想法吗 谢谢 如果您使用的是X11 您可以尝试xdotool捕获鼠标事件 它会是这样的
  • C修改printf()输出到文件

    有没有办法修改printf为了将字符串输出到文件而不是控制台 我尝试在互联网上查找一些内容 发现了类似的电话dup dup2 and fflush这可能与此有关 EDIT 也许我不清楚 问题是这是C考试问题 问题如下 解释一个通常将字符串输
  • 为什么opencv videowriter这么慢?

    你好 stackoverflow 社区 我有一个棘手的问题 我需要你的帮助来了解这里发生了什么 我的程序从视频采集卡 Blackmagic 捕获帧 到目前为止 它工作得很好 同时我用 opencv cv imshow 显示捕获的图像 它也工
  • 使用 python 脚本更改 shell 中的工作目录

    我想实现一个用户态命令 它将采用其参数之一 路径 并将目录更改为该目录 程序完成后 我希望 shell 位于该目录中 所以我想实施cd命令 但需要外部程序 可以在 python 脚本中完成还是我必须编写 bash 包装器 Example t
  • Bash:单行命令以与 grep 命令相反的状态退出?

    如何减少以下 bash 脚本 grep P STATUS Perfect recess txt exit 1 exit 0 看起来我应该能够用一个命令来完成它 但我这里总共有 3 个命令 我的程序应该 阅读课间休息 txt 如果它包含 ST
  • 如何查找哪个 Yocto 项目配方填充图像根文件系统上的特定文件

    我经常与 Yocto 项目合作 一个常见的挑战是确定文件为何 或来自什么配方 包含在 rootfs 中 这有望从构建系统的环境 日志和元数据中得出 理想情况下 一组命令将允许将文件链接回源 即配方 我通常的策略是对元数据执行搜索 例如gre
  • Bash 中的动态变量名称

    我对 bash 脚本感到困惑 我有以下代码 function grep search magic way to define magic variable 1 ls tail 1 echo magic variable 1 我希望能够创建一
  • 如何使用 mediawiki 的 api、curl 和 bash 登录?

    我对流程的理解 来自 mediawikis 登录手册https www mediawiki org wiki API 登录 https www mediawiki org wiki API Login 使用 MediaWiki 的 Web
  • 为什么 Git Bash 无法运行我的可执行文件?

    I am on git for windows https github com git for windows 吉特 巴什 我无法在命令行上运行可执行文件 Pedr Abc 07 MINGW64 c dev ls sqlite3 exe
  • Linux/POSIX:为什么 fork() 不分叉*所有*线程

    众所周知 POSIX下创建新进程的默认方式是使用fork 在 Linux 下 这在内部映射到clone 我想知道的是 众所周知 当一个人打电话时fork 子进程是用单个线程创建的 调用的线程fork cf https linux die n
  • 如何让 Node.js 作为后台进程运行并且永不死掉?

    我通过 putty SSH 连接到 linux 服务器 我尝试将其作为后台进程运行 如下所示 node server js 然而 2 5 小时后 终端变得不活动 进程终止 即使终端断开连接 我是否也可以使进程保持活动状态 Edit 1 事实
  • 在 Bash 中监控 tomcat,直到它完成部署 war 或应用程序

    怎么可能Tomcat在 bash 脚本中进行监控以检测它是否完成了战争或应用程序的部署 应用场景 Tomcat 开始于systemd Tomcat 开始于catalina sh 使用 Tomcat 管理器 Tomcat从Eclipse启动
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的
  • 无法显示 Laravel 欢迎页面

    我的服务器位于 DigitalOcean 云上 我正在使用 Ubuntu 和 Apache Web 服务器 我的家用计算机运行的是 Windows 7 我使用 putty 作为终端 遵循所有指示https laracasts com ser

随机推荐

  • 如何在 Posix 上使用 C 创建具有正确权限的目录

    我正在尝试编写一个简单的 C 程序来创建目录 mkdir 克隆 这是我到目前为止所拥有的 include
  • 如何使用 vb.net 将超链接放入电子邮件正文

    我想做的是在 vb net 中添加一个到电子邮件正文的超链接 当我发送电子邮件时 我收到的是链接文本 以下是我到目前为止所做的事情 任何帮助将非常感激 Accepts two parameters the username and pass
  • 在 Neo4j 中创建一个具有除 ID 之外的唯一属性的节点

    我的项目基于 Spring boot Neo4j 我正在尝试创建一个新的权限节点 但不想重复权限 现在我有一个 UserRole 节点 它保存List
  • 使用基于 Java 的配置在服务器模式下设置 H2

    我有 spring XML 它使我能够使用以下配置以服务器模式启动 H2 数据库
  • 在 Android Studio 中设置 Hello, World 手表应用时遇到问题

    在 Android Studio 中部署包含的 Hello World 手表应用程序的可穿戴版本时 我收到此错误 失败 INSTALL FAILED OLDER SDK Update 从 Reddit 帖子中删除有关尝试 L 的黑客版本的详
  • 是否值得将distinct() 与collect(toSet()) 一起使用

    将流的元素收集到集合中时 同时指定是否有任何优点 或缺点 distinct 在流上 例如 return items stream map distinct collect toSet 考虑到该集合已经删除了重复项 这似乎是多余的 但是它是否
  • Javascript 检测 mouseup 上按住的控制键

    我查了很多资料 似乎找不到满意的解决方案 我希望有人能帮帮忙 当我使用 jQuery 时 我还编写了数千行 JavaScript 所以 纯 JavaScript 解决方案就可以了 我正在尝试确定控制键是否被物理按住mouseup事件 就是这
  • 如果 LINQ 中的列为空,如何忽略“where”和“order by”条件

    我有交易对象列表 并希望根据当前用户所在的视图按特定条件对它们进行排序 我遇到的问题是 为了在 where 子句中添加条件 首先我需要检查它是否为空以防止空指针异常 这会导致列为 null 的记录被过滤掉 我想将它们包含在列表底部 如果该列
  • 如何从“Android终端模拟器”调用Rebol解释器?

    我需要从以下位置调用 Rebol 语言解释器作为运行脚本文件的命令 例如rebol script name reb 所以我不是在寻找仅在 Rebol 中启动的 APK 应用程序REPL http en wikipedia org wiki
  • 使用 Google Closure 的 @typedef 标签

    Google 的 Closure 编译器有一个 typedef 标签 但是可以在代码中使用它们吗 我知道它会起作用 但是它会让人皱眉吗 所以这是我的类型 The plan object s typedef typedef Object Ty
  • C# ListView显示

    伙计们 我是在 C 中实现 ListView 的初学者 我在 c net 中的这些代码遇到问题 我无法弄清楚输出显示的控件中发生了什么 看来我忘记了在 ListView 控件的属性中赋予值的内容 第二列值必须出现在第一列上 这是我的代码 u
  • 字符串初始化的区别

    首先 如果这是一个非常基本的问题 我很抱歉 我只是想知道以下字符串定义之间的区别 String x hello String y new String hello 我知道在 java 中 String 是一个类 它既不是原语也不是包装器 如
  • 如何更改 WCF 服务引用的地址?

    我有一个在内部使用的应用程序 并使用 WCF 在客户端和服务器部分之间进行通信 但是它很快需要部署到服务器名称不同的站点 WCF 服务使用 netTcp 绑定作为 Windows 服务托管 目前 服务的地址是使用 Visual Studio
  • C# - 将文本与图像合并

    我编写了以下代码来合并 2 个图像 我的需求很简单 图像始终具有相同的尺寸 因此不需要定位 我可以稍后处理这个问题 我想知道的是 我可以修改它以将文本标签作为我的 imgFront 合并到图像 imgBack 上吗 最后返回的结果将是一个新
  • azure cdn purge不刷新缓存内容

    我有一个连接到 blob 存储的 Azure CDN Verizon 高级 基于此中的步骤 6 我制定了 2 条规则tutorial https blog lifeishao com 2017 05 24 serving your stat
  • 在键入并保留光标位置时强制 UITextField 小写

    用 Swift 2 编程 我有一个 UITextField 当用户在其中键入内容时 应在键入时自动转换为小写 因此不在表单验证之后 我已经走到这一步了 func textField textField UITextField shouldC
  • SQL 子句与表达式术语

    我与一位队友就以下主题进行了讨论 clause and expression可以互换使用 例如 调用代表某个变量的变量是否正确 常见 expression a b 例如 参与声明SELECT WHERE expression 一个子句 Ed
  • Linq to SQL for WebMatrix(网页)

    我想知道是否可以在基于 webmatrix 的网站 C Razor 等 中使用 Linq to SQL 我喜欢数据库搜索之类的东西 如果我可以使用 Linq to SQL 来实现这一点 那就太棒了 或者至少 将行作为数据集或其他内容返回 然
  • 如何限制列表对象模板侧而不是视图侧

    限制对象的方法之一是向这样的函数添加限制 def ten objects obj Model objects all 0 10 limit to 10 return objects obj 但是 如何在模板内而不是在视图内实现此目的 我知道
  • 什么是EOF!!在 bash 脚本中?

    有一个命令我不明白 custom command lt lt EOF 我想问什么是EOF 在 bash 脚本中 我确实用google找到了EOF 但是google会忽略 自动 所以我找不到 EOF 我知道文件结尾标记 但我不完全知道 的含义