问题标签 [backticks]
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.
mysql - Bash 和 MySQL 变量错误
我有以下脚本:
我必须在“forum”、“key”和“id”中添加反引号 (``),否则会返回错误:
但如果我添加反引号,bash 会将它们解释为变量。
我该怎么办?
awk - 使用 awk 评估命令
问题是:我有不同的 txt 文件,其中为到达服务器的每个恶意软件数据包注册了时间戳和 IP 地址。我想要做的是创建另一个 txt 文件,该文件显示,对于每个 ip,恶意软件数据包第一次到达。
一般来说,我想做这样的事情:
我正在使用 awk 来做这件事。主要问题是“如果 ip 不在 list.txt 中”。我正在这样做:
(我使用 $3 因为 IP 地址在源文件的第三列)
我不知道如何让 awk 评估 grep 函数。我也尝试过使用反引号,但它没有用。有人可以给我一些提示吗?
我正在像这样的测试文件上测试我的脚本:
我应该得到的是:
感谢您的帮助,我成功地创建了适合我需要的脚本:
mysql - 重命名列名中包含 ` 的 MySQL 列
因此,工作中的另一个人创建了一个表,其中包含一个名为:
现在我正在尝试在另一台服务器上运行数据库转储,这给了我一个错误。
我正在尝试重命名它,但是
也
给我一个错误。你们有没有任何友好的人有提示?非常感谢!
perl - 如何在 Perl 中使用反引号在两个不同的变量中捕获 STDOUT 和 STDERR
假设我想从我的脚本中运行一个带有反引号的外部程序,同时我想同时捕获 STDOUT 和 STDERR,但使用两个不同的变量。我怎样才能做到这一点?例如,如果我运行这个脚本......
...如果没有错误,一切正常,但如果命令引发错误,则此错误将打印在命令行上,我不希望这种情况发生。我也想捕获错误。无需在屏幕上打印任何内容。有任何想法吗?
bash - Bash 脚本中的反引号和 $() 有什么区别?
我在 Bash 脚本中看到了两种不同的形式,它们似乎做同样的事情:
和
两者之间有什么区别,我应该什么时候使用它们中的每一个?
perl - 在反引号内使用 grep 进行动态 Perl 查找和替换
我正在尝试在命令行上进行动态搜索并替换为 Perl,其中部分替换文本是反引号中 grep 命令的输出。这可以在命令行上执行,还是我需要编写一个脚本来执行此操作?
这是我认为可以解决问题的命令。我认为 Perl 会将反引号视为命令替换,但它只是将反引号和其中的内容视为字符串:
更新:
感谢您提供有用的答案。是的,我原来的单行中有一个错字:grep 的目标文件应该是 *.
我根据 Schewrn 的示例编写了一个小脚本,但结果令人困惑。这是我写的脚本:
基本上我想做的是:
- 查找包含 $URL_Last 的文件。
- 将 $URL_Last 替换为 $URL_First 加上匹配文件所在目录的名称,再加上 $URL_Last。
- 将上述更改写入输入文件,而不修改输入文件中的任何其他内容。
运行我的脚本后,它完全混淆了输入文件中的 HTML 代码,并切断了文件中每一行的前几个字符。这很奇怪,因为我确定 $URL_Last 在每个文件中只出现一次,所以它应该只匹配一次并替换一次。这是由于滥用搜索功能引起的吗?
perl - 如何通过 Perl 中的反引号或系统获取文本
我想在 Perl 中调用一个执行某些操作的 EXE 文件
我尝试通过调用exe文件backtick
,system
但在这两种情况下我都只得到返回值
exe 文件在控制台上打印一些文本。是否也可以捕获它?
我查看了这个变量${^CHILD_ERROR_NATIVE}
,但我只得到返回值而不是文本
我正在使用 Perl 5.14
提前致谢
perl - 异步运行 perl 的反引号
现在我有一个 perl 脚本,它在某个时刻收集然后处理几个 bash 命令的输出,现在我是这样做的:
问题是,这些命令中的每一个都需要相当长的时间,因此,我想知道我是否可以同时运行它们。
grep - 处理由 grep 生成的文件列表,但名称有空格
我正在尝试使用 grep 命令的输出来替换找到的所有文件。问题是找到的一些文件的名称中有空格。这是一个简化的 grep 命令(它在多个邮件主机上找到多个名称)。
这会生成一个包含我需要的文件的列表,只列出文件名(-l
选项)。使用反引号我将文件名输入到 Perl 单行中:
当列出的所有文件的名称中都没有空格时,此方法有效,但当有空格时,它会中断。
有了 find 我知道我可以使用-print0
and xargs -0
,但似乎没有任何等效的grep
.
我可以将输出grep
放入一个文件中,然后读取它,但现在我想知道这是否有可能作为单行。
bash - 在 shell 脚本中使用 $() 而不是反引号有什么好处?
有两种方法可以捕获命令行的输出bash
:
旧版 Bourne shell 反引号
/li>``
:
/li>$()
语法(据我所知,它是特定于 Bash 的,或者至少不受非 POSIX 旧外壳(如原始 Bourne)支持)
与反引号相比,使用第二种语法有什么好处吗?还是两者完全 100% 等效?