问题标签 [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.
bash - Bash 运算符 <<< (即三倍小于号)是什么意思?
<<<
下面的代码块中的三重小于号 bash 运算符 ,是什么意思?
另外,为什么$IFS
仍然是一个空间,而不是一个句点?
linux - sh - 按分隔符分割字符串
代码
错误
重击版本GNU bash, version 4.2.37(1)-release (x86_64-pc-linux-gnu)
bash - 在 bash 中将 **heredoc** 添加到文件中
我正在使用:
首先将消息写入outfile
,然后继续进行进一步处理,这将附加到outfile
我的 awk 脚本中。
但是现在我的程序中的逻辑发生了变化,所以我必须首先
outfile
通过从我的程序中附加行awk
(从我的 bash 脚本外部调用)来填充,然后作为最后一步将${MSG}heredoc
添加到我的outfile
. .
我怎么能从我的 bash 脚本而不是 awk 脚本中做到这一点?
编辑
这是味精heredoc
:
java - 一个不简单的 grep 进入 ProcessBuilder
有谁知道如何将 linux grep 与 java ProcessBuilder 一起使用?为什么这段代码应该返回 "sing" 时返回一个空字符串?
我也尝试回显我用这段代码执行的内容:
并得到正确的结果:
我终于尝试在 shell 上执行命令并得到:
虽然由于某种原因它是红色字体。那么我做错了什么?
bash - 使用带有管道和此处字符串的内置读取
我正在处理一包图片,“文件”从中返回以下内容:
因此,在继续裁剪之前,我使用内置的“读取”在两个变量中选择尺寸。
但有些事情让我无法理解。为什么这个构造不起作用...
...当这个结构在工作时?
总而言之,为什么我不能在这种情况下使用带有内置“读取”的管道?
bash - 二进制安全 bash '这里的字符串'?
我想将命令的输出保存到变量中以供以后多次使用。为此,Bash 提供了Here String功能。但是它不是二进制安全的。它有时会添加新行:
有没有二进制安全的替代方案?
我在 for 循环中使用该变量,因此 IIUIC 它取消了tee
命令和任何类似管道的解决方案的资格。除了临时文件,我还更喜欢其他的东西,因为它们使用起来很慢而且很笨拙(需要一个可写的目录,清理)。
function - 在我声明它们之后是否可以重新评估这里的字符串?
我正在尝试将 PowerShell 用于小型代码生成任务。我希望脚本生成一些 java 类和接口。
在脚本中,我想在这里声明一个字符串变量。例如:
在声明之后,我想将它传递给我计算变量的函数$completeName
。但我不知道替换字符串中变量的正确方法是什么。我必须使用-replace
吗?还是有其他方法?
bash - 如何阻止此处的字符串 (<<<) 添加换行符或新行?
似乎here string
正在添加换行符。有没有方便的删除方法?
powershell - 在 scriptblock 和 here-string 中使用变量
我用脚本块开始了一个脚本:
所以这就是它必须的样子。
好的,但我需要一个变量。
所以我替换blabla
为$test
.
$HKCURegistrySettings -eq $HKCURegistrySettings3
所以现在通过比较我的第一个$HKCURegistrySettings
和我的现在$HKCURegistrySettings3
他们应该是一样的。但我得到一个错误的。1. 为什么它们不同?2. 我怎样才能使它们相同?3. 变量是在创建 Here-strings 之后定义的。其他选择?
创建脚本块后,它用于调用函数最初:
现在
所以这就是为什么结果应该是一样的。
谢谢,
powershell - 查找并替换同时包含双引号和方括号的字符串
假设我有一个名为 testfile.txt 的测试文件,其中包含以下行:
我想用 PowerShell 来表示,如果整个字符串存在,则在其下方直接放置一行值:
(请注意,它包括空格、括号和双引号。这很重要,因为我遇到的问题是我认为转义括号和双引号)。
所以结果是:
我认为最简单的方法是说,如果找到第一个字符串,则再次将其替换为第一个字符串本身,并且新字符串形成包含在同一命令中的新行。我很难将字符串排成一行,因此我尝试使用 herestring 变量,从而读取具有格式的整个文本块。它仍然不会将带有引号的完整字符串解析到管道中。我是 powershell 新手,所以如果你看到一些愚蠢的东西,请不要退缩。
以上只是每次都给出“未找到匹配项”。这是因为它没有找到文件中的第一个字符串。我尝试过使用反引号 [ ` ] 和双引号来尝试转义的变体,但我认为此处字符串中的要点是它应该解析包括所有格式的文本块,所以我不应该这样做。
如果我将文件更改为仅包含:
然后将此处的字符串相应地更改为:
然后它可以正常工作,我可以根据需要替换字符串。