有一个命令我不明白:
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(使用前将#替换为@)