问题标签 [quoting]

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 投票
4 回答
13438 浏览

perl - Perl 单行单引号

我使用 Perl 单行语句创建 SQL 语句,但不能包含单引号。

这就是我想要的:获取第一个字段并为其添加引号。

我尝试了几种不同的方法,但它对我不起作用。

  1.  

  2.  

这是另一个有趣的问题。

它使用 print 语句打印单引号,但是如果我为变量赋值并打印,它就不起作用。

我们如何在 Perl 单行语句中使用单引号和双引号?

0 投票
7 回答
38327 浏览

bash - eval、变量和引号的 Bash 问题

我一直在这里和其他任何地方阅读有关 bash 中的引号,但我没有帮助解决这个问题。

问题是,我有一个用于循环备份的小脚本。

如果我不使用,那么我的变量 ineval有问题。$OPTIONSrsync

但是如果我确实使用eval了,那么问题就出在变量上$CURRENT_DIR......

rsync 返回以下消息:'Unexpected local arg: /path/with'

我尝试了所有引用变量的方法$CURRENT_DIR

有什么方法可以让我使用该变量$CURRENT_DIR而不会出现空格引起的问题?

0 投票
4 回答
30003 浏览

tcl - TCL 的通用字符串引用

我正在编写一个实用程序(恰好在 python 中),它以 TCL 脚本的形式生成输出。给定python中的一些任意字符串变量(不是unicode),我想生成一个TCL行

...这会将 TCL 变量 ' s' 设置为该确切的字符串,而不管其中有什么奇怪的字符。没有变得太奇怪,我不想让输出比需要的更混乱。我相信一个体面的方法是

  1. 如果字符串不为空并且只包含字母数字和一些字符.-_(但绝对不是$"{}\),那么它可以按原样使用;

  2. 如果它只包含可打印的字符并且没​​有双引号或花括号(并且不以反斜杠结尾),那么只需将它放在{}它周围;

  3. 否则,在对 使用转义符""后将其放置 ,对非打印字符使用转义符。\" { } \ $ [ ]\nnn

问题:这是需要在双引号内转义的完整字符集吗?我在文档中找不到这个。我错过了什么吗(例如,我几乎错过了 (2) 的字符串不能以 \ 结尾)。

我知道还有很多其他的字符串可以被 引用 {},但似乎很难轻松识别它们。此外,如果您不介意 TCL 输出中确实存在非打印字符(特别是换行符),那么 (2) 看起来是可以的。

0 投票
3 回答
2104 浏览

c - C程序中的bash脚本代码

我的问题如下:我有这个 bash 脚本:

我需要将此代码插入到 C 程序中。我试图在一行上重新编写所有脚本,直接使用 shell 对其进行测试并且它可以工作,但是我遇到了引号和转义问题,试图将其用作 system() 调用的参数。你能给我一个出路吗?

谢谢您的帮助

0 投票
2 回答
2775 浏览

c# - Process.Start、批处理文件和报价

我编写了一个BAT自动连接和断开宽带连接的脚本:

当我单击BAT脚本时它工作正常,但是当我执行它时Process.Start

netsh 返回找不到 mbn 命令的错误。

在我使用BAT文件之前,我直接启动了命令。他们在 shell 上运行良好,但在使用Process.Start.

为什么这会发生在我身上?

输出:

C:\Dev\NetworkAdapterTest\NetworkAdapterTest\bin\Debug>netsh mbn connect interface=\"Mobile Breitbandverbindung\" connmode=name name=\"A1 2\" 找不到以下命令:mbn connect interface="Mobile Breitbandverbindung"连接模式=名称名称=“A1 2”。

C:\Dev\NetworkAdapterTest\NetworkAdapterTest\bin\Debug>netsh mbn disconnect interface=\"Mobile Breitbandverbindung\" 找不到以下命令:mbn disconnect interface="Mobile Breitbandverbindung"

注意引用是如何真正连接的。当我直接启动命令时,我遇到了同样的问题。

当我使用 Visual Studio 2008 编译解决方案时,一切都按预期工作。

问题不再相关。

0 投票
2 回答
8624 浏览

bash - 如何传递包含引号/空格的脚本参数?

我正在尝试编写一个notify-finish可以附加到任何命令的脚本。完成后,它将运行以下参数给出的命令,然后在命令完成时向用户发送电子邮件。这是我所拥有的:

这在大多数情况下都有效,但是当参数包含空格时,引号会被删除。

工作示例:

失败的例子:

在第二种情况下,$@扩展为rsync -avz -e ssh -c blowfish source user@remote:dest/,缺少单引号。它也不适用于双引号,也不适用于$*.

在阅读了其他帖子后,我尝试将命令放入数组中,但我遇到了完全相同的问题:

我如何使它适用于所有论点?

0 投票
2 回答
122 浏览

shell - 如何将文件中的引用文本隔离到 shell 变量?

如何将文件中的引用文本隔离到 shell 变量?
另外:如何忽略以 开头的行'#'

假设我有文本文件

我想编写一个执行的脚本

对于文本文件中的每一行。
如果它更容易,您可以假设文本文件中的 FULLNAME 和 MOREDATA 总是用引号引起来,即使它们由单个单词组成。


我尝试了简单的

但它不会将引号内的值分组在单个 shell 变量中。
输出是

相反,我想获得

当然,我可以添加myscript到原始文本文件的每一行,并使该文件成为脚本或编写C程序来执行此操作...

0 投票
1 回答
4348 浏览

bash - 扩展变量后在 Bash 中获取文件内容

猫文件

猫脚本

。/脚本

我想获得变量的实际值,而不是“$VAR”。如何获得较弱的报价?非常感谢!

0 投票
2 回答
428 浏览

macros - 强制 Clojure 宏中的参数获取命名空间捕获

我正在开发一个 Clojure 宏来帮助构建基于 GridBagLayout 的 JPanel。我可以在宏内部的默认映射中获取 Java 类以进行命名空间限定,但不能将那些作为参数传入的类。我需要什么反引号、引号、tildas 或其他东西的神奇组合?

当我使用Insets默认映射中的定义时,它被限定为(不是“符号捕获”)(java.awt.Insets ...)

但是当我将它作为参数传递时,它不会:

我不只是想成为一个坚持不懈的人。我收到编译器错误,它找不到合适的GridBagConstraints构造函数。

0 投票
2 回答
14432 浏览

linux - 使用 SSH 时转义引号

我正在尝试为我的 PHP 应用程序构建一个简单的部署脚本。我知道有几种工具可以完成这项工作(Capistrano、Phing 等),但对于我的简单部署例程来说,它们似乎需要做很多工作。

我使用sshpass来避免一遍又一遍地输入我的密码。但是在上传我的压缩安装程序后,我需要 ssh 到服务器并运行一些命令。其中之一是 sed。所以,引号打破了我的剧本。是这样的:

如您所见,我使用双引号来开始我的 SSH 语句,但我还需要在 sed 上使用它们。

任何建议将不胜感激。谢谢!