单行 heredocument - 在 Bash 中可能吗?

3 here-document here-string

我希望cat在一行中运行一个heredocument,而不是 3 行的自然语法(开场白、内容和分隔符)。我这样做的需要主要是美观,因为重定向的内容旨在成为手册文本文件的一部分,我想在该特定文件中尽可能多地保存行)。

cat <<< TEST > ~/myRep/tiesto tiesto TEST(我通常会分成 3 部分)会导致错误:

tiesto: 没有这样的文件或目录

测试:没有这样的文件或目录。

甚至可以在 Bash 中执行一行 heredocuments 吗?

Kus*_*nda 11

是的,但您将使用here-string而不是here-document

cat >"$HOME/myRep/tiesto" <<<'tiesto'
Run Code Online (Sandbox Code Playgroud)

这会将字符串发送tiestocat其标准输入,并$HOME/myRep/tiesto通过重定向其标准输出将字符串写入文件。

请注意,here-strings 不是标准的,但至少由zsh它实现(它来自哪里,同时与 的 UNIX 版本一样rc,尽管它rc及其派生类在最后添加esakanga不添加额外的换行符), ksh93bashmkshyash