如何在 Windows 上的 Perl 中访问包含空格的路径?

2024-04-17

我正在将 Unix Perl 脚本转换为在 Windows 上运行。我遇到的问题是路径中含有空格:

open (IN, "| C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysql.exe -u root -ppwd") or die "$!";

上面的代码抛出以下错误:

'C:\Program' is not recognized as an internal or external command,

我尝试包裹在逃脱\"像这样:

open (IN, "| \"C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysql.exe -u root -ppwd\"") or die "$!";

但没有喜悦。如何处理带有空格的路径?

我正在使用为 MSWin32-x86-多线程构建的 ActiveState v5.10.0。


您正在引用整个命令,包括命令行参数。您应该将第二个转义引号放在mysql.exe:

open (IN, "| \"C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysql.exe\" -u root -ppwd") or die "$!";

您可能还对qq() and q()运算符,允许您使用引号以外的分隔符来分隔字符串。当您想要引用包含引号的字符串时,它们非常有用:

qq[| "C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysql.exe" -u root -ppwd]

另外,Perl 会很乐意处理命令名称的正确路径分隔符(但并不总是命令参数,所以要小心):

qq[| "C:/Program Files/MySQL/MySQL Server 5.1/bin/mysql.exe" -u root -ppwd]

(由于此示例不需要任何插值,因此您可以使用单引号或q()建造:

'| "C:\\Program Files\\MySQL\\MySQL Server 5.1\\bin\\mysql.exe" -u root -ppwd'

)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Windows 上的 Perl 中访问包含空格的路径? 的相关文章

  • 如何使用 DLL 来模拟静态库的“应用程序内全局变量的多个实例”行为?

    我们有一个用 C C 编写的应用程序 它被分解为单个 EXE 和多个 DLL 这些 DLL 中的每一个都使用相同的静态库 utilities lib 实用程序静态库中的任何全局变量实际上在应用程序内运行时都会有多个实例 每个模块 即 DLL
  • Python ctypes:SetWindowsHookEx 回调函数从未被调用

    我正在尝试用 Python 编写一个程序 该程序可以识别何时显示警报框 对话框 它正在处理多个监视器 我希望它在任务栏图标闪烁 弹出错误 通知等时在辅助监视器上显示可视化效果 据我所知 检测这些事件的方法是使用消息挂钩 如下所述 http
  • PHP OCI8 扩展不适用于 PHP 7 64 位

    我已经安装了 APACHE 2 4 x64 和 PHP7 x64 并下载了 PHP OCI 64 位库 但问题是每当我从 cli 运行 PHP 脚本时 它都会说 PHP启动 无法加载动态库 E 软件 服务器 php 7 0 11 Win32
  • Windows EventLog:它的操作速度有多快?

    我有一个服务应用程序 它通过 TCP 处理客户端请求并将任何事件写入 Windows EventLog 由于该应用程序预计会在短时间内为许多客户端和每个客户端的大量请求提供服务 假设每秒 1 到 50 个请求 因此我很想知道密集程度 CPU
  • 如何在Windows平台上编写Git Server Hooks?

    我找不到任何适用于 Windows 的 Git 挂钩的明确示例 我在 Windows Server 上使用 Bonobo Git Server 我需要预提交和提交后挂钩作为 cmd 或 bat 预提交应检查空注释 提交后应发送有关提交的电子
  • 如何在 Firebase 实时数据库上安排通知?

    我正在为我工 作的公司开发一个 flutter 通信应用程序 但我遇到了两个问题 这是我需要做的 1 向用户组或特定用户发送通知 并将这些通知保存在数据库或json文件中 该列表将作为 最新新闻 出现在我的应用程序的主屏幕上 问题是 当应用
  • 使用带有 _O_U8TEXT 的 setmode 处理 unicode 时 C++ 崩溃

    我尝试打印 unicode 的是 setmode fileno stdout O U8TEXT string str u8 unicode hangul cout lt lt str lt lt endl 我使用 setmode 来正确显示
  • Python 在打开套接字时可以选择哪个网络适配器吗?

    运行 python 应用程序的目标计算机将具有三个可用的网络接口 一般来说 所有三个网络都会有很大不同 但是三个网络中的两个可能位于相似的网络上 在下面的示例中 我无法控制 ETH 2 上的目标地址 因为它是预先配置的系统 因此我被迫以编程
  • 无法在 XAMPP 和 Windows XP 上安装 Xdebug

    我知道 这个问题已经被问过好几次了 但答案并没有解决我的问题 我在 Windows XP SP3 上运行 XAMPP 1 8 2 并且在安装 XDebug 时遇到困难 我从网站下载了XDebug 不幸的是 安装向导对我不起作用 我的 PHP
  • 使用 Perl 进行数据签名

    我参与了这个涉及发送签名数据的项目 我已经获得了一个 pem 文件和一个服务器证书 我应该将其导入到另一台服务器 我应该使用这些文件对数据进行签名 然后将签名的数据发送到另一台服务器进行验证和处理 我的问题是 如何将这两个文件导入到我的服务
  • 如何在 Perl 中序列化数组引用数组?

    Perl 有很多用于序列化数据的模块 我不知道该选择哪一个 我需要将以下数据序列化为字符串 以便将其放入数据库中 my categories Education Higher Education Colleges Schooling Col
  • 生成唯一硬件 ID 的可靠方法

    问题 我必须为每个联网客户端提供唯一的 ID 例如 一旦客户端软件安装在目标计算机上 它 ID 应该持续存在 并且如果在同一台计算机和相同的操作系统安装上重新安装软件 它应该继续存在 如果以大多数方式修改硬件配置 除了更改主板 它不应该改变
  • 尝试从 Polar H10 获取心率变异性 [蓝牙低功耗示例 UWP]

    我正在与 Polar H10 合作 从中获取心率变异性 我在跑步蓝牙低功耗示例 https github com Microsoft Windows universal samples tree master Samples Bluetoo
  • 如何抑制输出并检查命令是否成功?

    我正在尝试编写一个 powershell 脚本来测试 MySQL 登录是否成功 检查是否发生错误 我还想抑制命令的所有输出 成功或不成功 这些是我尝试过的事情 mysql u root password mypass e show data
  • VC++ 中的 getopt()

    我非常喜欢使用 GNUgetopt http www gnu org software libtool manual libc Getopt html 当在Linux 据我所知 getopt 在 MS VC 下不可用 Note Win32环
  • 如何根据操作系统系列拥有不同的依赖关系

    我正在编写一个跨平台库 它具有特定于平台的依赖关系 一个用于类 UNIX 平台 一个用于 Windows 这些板条箱仅在特定平台上编译 因此我不能正常地将它们全部添加到依赖项下 在我实际使用的 Rust 代码中cfg属性 例如 cfg un
  • Windows Unicode C++ 流输出失败

    我目前正在编写一个应用程序 它要求我在任意窗口上调用 GetWindowText 并将该数据存储到文件中以供以后处理 长话短说 我注意到我的工具在 战地 3 上失败了 我将问题范围缩小到窗口标题中的以下字符 http www filefor
  • Emacs 23.1.50.1 在 Windows XP 上随机挂起 6-8 秒

    我的 Windows XP 机器上有 EmacsW32 23 1 50 1 emacs 运行 它随机挂起 5 到 8 秒 非常令人沮丧 有人有解决办法吗 我什至尝试使用来自 gnu ftp 站点的 emacs win32 二进制文件 23
  • 如何在 Perl 脚本中递归查找文件/文件夹?

    我有一个 perl 脚本 我编写了该脚本来递归地搜索 Windows 文件夹中的文件 我输入搜索文本作为 perl 脚本运行时参数 以查找名称中包含此文本的文件 perl脚本如下 use Cwd file1 ARGV 0 res1 glob
  • 安装 confluence-kafka 时“文件名或扩展名太长”?

    我在使用 pip install confluence kafka 安装 confluence kafka 时遇到一些问题 但我收到此错误 文件名或扩展名太长 详细信息如下 Collecting confluent kafka Using

随机推荐

  • 选择元素时,CSS 中的插入符号 ^ 有何用途?

    我在文件中遇到了这样的 css 选择器 contactDetails ul li a a href tel 像这样的抑扬符 在 CSS 中没有定义的含义 两字符运算符 可用于属性选择器 http www w3 org TR selector
  • 使用字节将字母数字代码解码为键值对象

    我有一个来自 CS GO 游戏的 十字准线代码 CSGO O4Jsi V36wY rTMGK 9w7qF jQ8WB 我可以使用此函数解码一些值 import BigNumber from bignumber js Intentionall
  • Mongodb php查询,在数组中搜索?

    我正在寻找一种在具有以下结构的 answer 文档数组中搜索关键字 例如 Henrik 的方法 Array id gt MongoId Object id gt 4eeedd9545c717620a000007 formId gt 6 re
  • 使用纬度/经度计算从 A 点到线段的距离

    我正在开发一个使用 GPS 的 Android 应用程序 我想知道如果 新位置 C 点 距离线段 AB 太远 是否有办法可以丢弃 GPS 位置数据 我正在使用发现的点到线段公式在维基百科上 http en wikipedia org wik
  • 在MySQL php中将ID从一个表插入到另一个表

    我有两张桌子 一张是Information另一个是work force 信息 劳动力 当 的时候addInformation 接到电话 我想将数据插入到信息 以及id这是自动增量将插入表workForce 列 twf 这是我尝试过的 添加信
  • 在 BPMN 中用一个任务表示 while 循环的正确方法是什么?

    BPMN 中表示仅重定向到一个任务的简单 while 循环的正确方法是什么 我想说使用循环活动是更好的选择 因为它有助于保持流程模型整洁 在流程中创建循环时也要小心 因为任务定义通常在第一次迭代和第二次迭代之间发生变化 例如第一次迭代是创建
  • 如何使应用程序的触摸栏在 macOS 上始终可见?

    我正在做macOS 菜单栏应用程序 https vidr io显示全屏覆盖 用户可以通过菜单栏中的滑块控制该叠加层的不透明度 我希望将这些控件移至触摸栏 因为该应用程序用于屏幕录制 并且会记录主屏幕上的干扰 我的应用程序中的滑块应该像默认情
  • Spring Security 3.1.0 - 无法从 HTTPS 切换到 HTTP

    我是 Spring Security 的新手 所以我制作了一个小型 Web 应用程序 以便尝试它并找到对我正在从事的项目有用的配置 我强制通过 HTTPS 访问登录页面 登录后需要切换回 HTTP 换句话说 登录页面 仅限 HTTPS 其他
  • iPhone开发-设置UIWebView字体

    我必须显示从服务器提取的富文本 所以我使用 UIWebView 现在的问题是我无法控制 UIWebView 中使用的字体 如何更改字体以使用系统字体 使其与应用程序的其余部分一致 我现在正在做这样的事情 myRichTextView UIW
  • 如何在 AWS CloudWatch Insights 中按字段聚合日志,然后按 bin 聚合日志?

    我正在尝试执行一个查询 该查询将首先按字段计数聚合 然后按bin 1h 例如我想得到如下结果 Date Field Count 1 2019 01 01T10 00 00 000Z A 123 2 2019 01 01T11 00 00 0
  • 存档的 macOS 应用程序启动时显示空白窗口

    我有一个 macOS 应用程序 其中包含一个 ViewController 可以重命名应用程序窗口并调整其大小 有几个按钮 以及一个在启动时加载默认网页的 WKWebView 该项目本身是一个 xcworkspace 文件 因为它包含用于
  • 对外部程序的非阻塞调用,不会丢失返回码

    当从 Matlab 中启动外部程序 为了简洁起见 我们将其称为 EX 时 我可以这样做 status result system EX exe 它将阻塞直到 EX 返回 或者像这样 status result system start EX
  • 如何在winform和wpf中以编程方式实现鼠标移动、单击、右键单击和按键等?

    如何在 winform 和 wpf 中以编程方式移动鼠标 单击 右键单击和按键等 如果可能的话 请帮我提供代码片段 如果我正确理解你的问题 那么你想真正模拟输入 在这种情况下SendInput是要走的路 从这个链接 http robrely
  • 存储过程中的 SQL case 语句

    我有一个包含 CASE 语句的 SQL Server 存储过程 但是 如果多个条件成立 我需要附加这些值 因此 如果某个特定记录有失效日期 And 超出里程 我希望这两个值都显示在不可归档原因柱子 我将如何实现这一目标 CASE WHEN
  • 查找列表中不常见的元素

    我正在尝试编写一段可以自动分解表达式的代码 例如 如果我有两个列表 1 2 3 4 和 2 3 5 代码应该能够找到两个列表 2 3 中的公共元素 并组合其余的元素元素一起组成一个新列表 即 1 4 5 从这篇文章 如何找到列表交集 htt
  • Perl 6 语法与我认为的不匹配

    我正在做代码出现第 9 天 http adventofcode com 2017 day 9 您坐了一会儿并记录了流的一部分 您的谜题输入 这些字符代表组 开头的序列 并结束于 在一个组内 有零个或多个其他东西 用逗号分隔 要么是另一个组
  • Python 中检查两个冻结集是否相等的时间复杂度

    在网上找不到详细信息 当比较两个冻结集时 Python 是否会迭代其中一个集合中的元素 或者是否检查冻结集的哈希值 因为冻结集是可哈希的 由于参考文档对此没有任何说明 因此它依赖于实现 因此除了查看您正在使用的 Python 版本的源代码
  • Kotlin 中的变量,与 Java 的区别:“var”与“val”?

    我在尝试学习Kotlin https en wikipedia org wiki Kotlin programming language 什么是val var and internalKotlin 与 Java 相比 In Java Rad
  • 在 NSTextField 中输入时过滤 NSTable - 自动选择第一行

    我有一个NSTextView过滤的字段NSTable表作为用户在输入中键入的内容 我已经成功实现了表过滤 现在 我的目标是自动选择第一个结果 表中的第一行 并允许用户在键入搜索查询时使用箭头键在结果之间移动 在表中的结果之间移动时 输入字段
  • 如何在 Windows 上的 Perl 中访问包含空格的路径?

    我正在将 Unix Perl 脚本转换为在 Windows 上运行 我遇到的问题是路径中含有空格 open IN C Program Files MySQL MySQL Server 5 1 bin mysql exe u root ppw