Windows 中的 Ruby 多行反引号执行不起作用

标签 ruby windows

这就是我正在做的事情:

cmd = "echo foo\n echo bar"
out = `#{cmd}`

在 Linux 中我有“foo\nbar”。在 Windows 中我有“foo”。这是为什么?如何修复?

最佳答案

看起来 cmd.exe 会读取直到换行符 (\n) 并忽略剩余部分。

您可以使用 && 来组合命令:

cmd = "echo foo && echo bar"
out = `#{cmd}`
# => "foo \nbar\n"

关于Windows 中的 Ruby 多行反引号执行不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34453971/

相关文章:

python - 分发嵌入 Cython 编译的代码并使其在任何机器上工作所需的最少文件集

c# - 打开对话框防止 windows 关闭

linux - Windows cmd/powershell 是否有等效的 pkexec?

c++ - __imp 链接错误使用 g++ 在 mingw 下运行

ruby - Curb curb-fu gem 安装问题

ruby - Ruby & Rails 中的大括号 : [Brackets],(圆括号)和 {Curlies}

ruby-on-rails - 如何将数据库中缺少的参数字段合并到 rails 中的参数哈希

android - 特定的多平台应用。能做好吗?

ruby - 如何在 Rack::Test 中发布数据

ruby - 在 Jekyll 中使用 Live Reload