问题标签 [herestring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
18320 浏览

bash - Bash 运算符 <<< (即三倍小于号)是什么意思?

<<<下面的代码块中的三重小于号 bash 运算符 ,是什么意思?

另外,为什么$IFS仍然是一个空间,而不是一个句点?

0 投票
5 回答
13165 浏览

linux - sh - 按分隔符分割字符串

代码

错误

重击版本GNU bash, version 4.2.37(1)-release (x86_64-pc-linux-gnu)

0 投票
3 回答
1198 浏览

bash - 在 bash 中将 **heredoc** 添加到文件中

我正在使用:

首先将消息写入outfile,然后继续进行进一步处理,这将附加到outfile我的 awk 脚本中。

但是现在我的程序中的逻辑发生了变化,所以我必须首先 outfile通过从我的程序中附加行awk(从我的 bash 脚本外部调用)来填充,然后作为最后一步${MSG}heredoc添加到我的outfile. .

我怎么能从我的 bash 脚本而不是 awk 脚本中做到这一点?

编辑

这是味精heredoc

0 投票
2 回答
2073 浏览

java - 一个不简单的 grep 进入 ProcessBuilder

有谁知道如何将 linux grep 与 java ProcessBuilder 一起使用?为什么这段代码应该返回 "sing" 时返回一个空字符串?

我也尝试回显我用这段代码执行的内容:

并得到正确的结果:

我终于尝试在 shell 上执行命令并得到:

虽然由于某种原因它是红色字体。那么我做错了什么?

0 投票
3 回答
97 浏览

bash - 使用带有管道和此处字符串的内置读取

我正在处理一包图片,“文件”从中返回以下内容:

因此,在继续裁剪之前,我使用内置的“读取”在两个变量中选择尺寸。

但有些事情让我无法理解。为什么这个构造不起作用...

...当这个结构在工作时?

总而言之,为什么我不能在这种情况下使用带有内置“读取”的管道?

0 投票
1 回答
258 浏览

bash - 二进制安全 bash '这里的字符串'?

我想将命令的输出保存到变量中以供以后多次使用。为此,Bash 提供了Here String功能。但是它不是二进制安全的。它有时会添加新行:

有没有二进制安全的替代方案?

我在 for 循环中使用该变量,因此 IIUIC 它取消了tee命令和任何类似管道的解决方案的资格。除了临时文件,我还更喜欢其他的东西,因为它们使用起来很慢而且很笨拙(需要一个可写的目录,清理)。

0 投票
3 回答
57 浏览

function - 在我声明它们之后是否可以重新评估这里的字符串?

我正在尝试将 PowerShell 用于小型代码生成任务。我希望脚本生成一些 java 类和接口。

在脚本中,我想在这里声明一个字符串变量。例如:

在声明之后,我想将它传递给我计算变量的函数$completeName。但我不知道替换字符串中变量的正确方法是什么。我必须使用-replace吗?还是有其他方法?

0 投票
3 回答
2529 浏览

bash - 如何阻止此处的字符串 (<<<) 添加换行符或新行?

似乎here string正在添加换行符。有没有方便的删除方法?

0 投票
2 回答
1524 浏览

powershell - 在 scriptblock 和 here-string 中使用变量

我用脚本块开始了一个脚本:

所以这就是它必须的样子。

好的,但我需要一个变量。

所以我替换blabla$test.

$HKCURegistrySettings -eq $HKCURegistrySettings3

所以现在通过比较我的第一个$HKCURegistrySettings和我的现在$HKCURegistrySettings3

他们应该是一样的。但我得到一个错误的。1. 为什么它们不同?2. 我怎样才能使它们相同?3. 变量是在创建 Here-strings 之后定义的。其他选择?

创建脚本块后,它用于调用函数最初:

现在

所以这就是为什么结果应该是一样的。

谢谢,

0 投票
2 回答
1982 浏览

powershell - 查找并替换同时包含双引号和方括号的字符串

假设我有一个名为 testfile.txt 的测试文件,其中包含以下行:

我想用 PowerShell 来表示,如果整个字符串存在,则在其下方直接放置一行值:

(请注意,它包括空格、括号和双引号。这很重要,因为我遇到的问题是我认为转义括号和双引号)。

所以结果是:

我认为最简单的方法是说,如果找到第一个字符串,则再次将其替换为第一个字符串本身,并且新字符串形成包含在同一命令中的新行。我很难将字符串排成一行,因此我尝试使用 herestring 变量,从而读取具有格式的整个文本块。它仍然不会将带有引号的完整字符串解析到管道中。我是 powershell 新手,所以如果你看到一些愚蠢的东西,请不要退缩。

以上只是每次都给出“未找到匹配项”。这是因为它没有找到文件中的第一个字符串。我尝试过使用反引号 [ ` ] 和双引号来尝试转义的变体,但我认为此处字符串中的要点是它应该解析包括所有格式的文本块,所以我不应该这样做。

如果我将文件更改为仅包含:

然后将此处的字符串相应地更改为:

然后它可以正常工作,我可以根据需要替换字符串。