如何替换cmd.exe中的百分号字符?

2024-01-24

在 Windows 命令提示符中,我尝试替换中的空格set string=Hello World用字符串%20。天真地尝试像这样使用字符串文字 %20 :

set string=%string: =%20%

结果是HelloWorld20%。尝试使用转义字符^像这样:

set string=%string: =^%20%

也导致HelloWorld20%。试图逃离%像这样加倍:

set string=%string: =%%20%

结果是HelloWorld%20%。我还尝试使用另一个变量来进行替换,如下所示:

set r=%20
set string=%string: =%r%%

这导致HelloWorldr%%.

I found this https://stackoverflow.com/questions/14718591/escape-percent-signs-in-given-variables,它处理变量中百分比字符的转义。我还发现this https://stackoverflow.com/questions/10296162/escaping-special-characters-in-cmd,它处理百分比字符的转义输入。但这似乎都不适用于字符串替换。

A Windows cmd.exe 的教程/文档页面 http://ss64.com/nt/syntax-replace.html我在网上找到的告诉我我有正确的语法,但不包括用百分比字符替换。

读完所有这些后,我尝试了:

setlocal EnableDelayedExpansion
set string=!string: =%20!

这导致!string: =%20!.

我没有主意,你能帮忙吗?


你需要delayed expansion在这种情况下:

set "str1=Hello World!"
set "str2=%20"
for /f "delims=" %a in ('cmd /v:on /c @echo "%str1: =!str2!%"') do set "str3=%~a"
echo %str3%

什么是延迟扩张? http://blogs.msdn.com/b/oldnewthing/archive/2006/08/23/714650.aspx

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

如何替换cmd.exe中的百分号字符? 的相关文章

  • 在 64 位 Windows 上运行 32 位可执行文件时出现问题

    如果允许的话 我会添加 500 个我自己的代表作为赏金 我在用着wkhtml转pdf http wkhtmltopdf org 将 HTML 网页转换为 PDF 这在我的 32 位开发服务器上完美运行 不幸的是 我无法运送我的机器 p 但是
  • 如何修复圆角按钮中边框和背景之间的空白?

    我为我的 WPF 应用程序创建了一个简单的按钮模板
  • 批处理脚本 - IF EXIST 复制到 %localappdata% 错误

    我似乎被批处理脚本困住了 需要一些帮助 基本上我需要检查文件是否存在于文件夹中 localappdata 如果确实如此 则覆盖该文件 如果没有放置在不同的位置 那么目前它的内容如下 IF EXIST localappdata foldern
  • 如何在拥有句柄时检查给定进程是否正在运行

    我在用ShellExecuteEx启动应用程序 成功开始阅读后TShellExecuteInfo hProcess获取已启动进程的句柄 我想定期检查我的应用程序启动的进程是否仍在运行 两个或多个同名进程可以同时运行 我想确保我的应用程序正在
  • 如何为 Windows toast 注册协议?

    如何注册 Windows toast 协议 样本中来自https blogs msdn microsoft com tiles and toasts 2015 07 02 adaptive and interactive toast not
  • .NET 字符串.替换

    我很生气 通常 我喜欢像 C 中那样进行替换 但是是否有一种 C 风格的替换 它一次仅替换一个字母或我指定的 X 数量 不 BCL 中不存在仅替换字符的单个实例的 Replace 方法 两个主要的 Replace 方法将替换所有出现的情况
  • 当用户尝试打开新实例时返回到已打开的应用程序

    这是我有一段时间想不通的问题 防止第二个实例很简单并且有很多方法 但是恢复已经运行的进程则不然 我想 最小化 撤消最小化并将正在运行的实例置于最前面 在其他窗口后面 将应用程序置于最前面 我使用的语言是 VB NET 和 C 我发现这段代码
  • PC 相当于 Coda 吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 使用特定的 JRE 运行 JAR 文件

    在 Windows 上有没有办法使用位于特定文件夹中的 JRE 运行 JAR 文件 类似于 Eclipse 在您提供给它的某个路径中查找其 JRE 的方式 一些 Windows 可执行代码 C 或 C 或批处理文件都可以完成这项工作 谢谢
  • 查找所有 DHCP 和 DNS 服务器

    我有一位客户要求我找到他所有的 Dhcp 和 DNS 服务器以及一些附加信息 例如 DC 服务器和操作系统 所以我决定尝试提高我的 powershell 技能 但我对此还很陌生 所以我写了这个脚本 但我想仍然缺少一些东西 因为它不起作用 编
  • 使用 Rust 构建的 DLL 在运行时是否需要 libgcc.dll?

    如果我构建一个 DLLRust 语言 http rust lang org 是否需要libgcc dll在运行时出现 一方面 我在互联网上的某个地方看到过一个帖子 声称是的 rustc exe has libgcc s dw2 1 dll在
  • 高级 Win32 图像文件 I/O?

    我想在 Windows C 应用程序中将图像文件读入内存 什么是一个相当简单的解决方案 也许类似于 IOS 提供的UIImage 我希望支持合理数量的文件格式 我需要为图像处理的位图提供一些低级访问权限 我在互联网上阅读了很多内容 看起来
  • 如何插入包含“&”的字符串

    如何编写包含 字符的插入语句 例如 如果我想将 J J Construction 插入数据库的列中 我不确定这是否有什么不同 但我正在使用 Oracle 9i 我总是忘记这一点 然后又回到它 我认为最好的答案是迄今为止提供的答复的组合 首先
  • 当调用dll函数时,参数对象的成员变量的内存地址发生变化

    类某类 一些成员MemberClass one of the mem 我有一个函数foo SomeClass object 在 dll 中 它是从 exe 调用的 Problem 地址one of the mem 在调度 dll 调用期间发
  • 转义用户数据,无需魔法引号

    我正在研究如何在来自外部世界的数据被用于应用程序控制 存储 逻辑等之前正确地对其进行转义 显然 随着 magic quote 指令在 php 5 3 0 中很快被弃用 并在 php6 中被删除 对于任何想要升级并进入新语言功能 同时维护遗留
  • Java 7 默认语言环境

    我刚刚安装了 jre7 我很惊讶地发现我的默认区域设置现在是 en US 对于jre6 它是de CH 与jre7有什么不同 默认区域设置不再是操作系统之一吗 顺便说一句 我使用的是Windows7 谢谢你的回答 编辑 我已经看到了语言环境
  • 只保留 A-Z 0-9 并使用 javascript 从字符串中删除其他字符

    我正在尝试验证字符串以使它们成为有效的网址 我只需要保留 A Z 0 9 并使用以下命令从字符串中删除其他字符javascript or jquery 例如 贝儿餐厅 我需要将其转换为 百丽餐厅 所以字符被删除 只保留 A Z a z 0
  • 为什么某些安装程序需要在运行程序之前重新启动计算机?

    我对部署桌面应用程序相当陌生 所以这是我第一次为我的软件构建安装程序 目前 我安装软件后第一次运行它时 它崩溃了 之后 它运行良好 我仍在调试此问题 但我注意到在安装后和运行软件之前立即重新启动似乎可以修复此崩溃 某些安装程序要求您在运行软
  • 推送更改到 Git 不起作用

    每次我想要提交命令 git push heroku master 时 系统都会要求我在 PowerShell 中输入凭据 当我输入 heroku 凭据 默认情况下连接到 git 时 我收到错误消息 但是 当我输入我的主目录中的 netrc
  • Windows 10:任务栏中的图标大小错误

    从 Windows 10 开始 任务栏中的图标大小似乎为 24x24px 如果 Windows 选择图标文件中的 24px 版本进行显示 那么这不会有问题 但它选择了 32px 版本并将其缩小 这会导致丑陋的伪像 尤其是当你的图标中有直线时

随机推荐

  • 计算一个 div 可以容纳多少个字符(来自字符串)而不使其换行?

    所以我有一个 div div 我想知道在换行到下一行之前 字符串可以容纳多少 长度 脚本应考虑元素的宽度 真实宽度 clientWidth 左右边距以及左右内边距 div div 而 JavaScript 假设魔法函数是calculate
  • 将谷歌广告添加到Android应用程序

    我正在尝试将谷歌广告添加到我的应用程序 这是我第一次 我也添加了 jar 文件 这是 xml
  • MS Chart:如何更改条形图轴上每个标签的颜色?

    我有一个条形图 它在 Y 轴上显示不同的类别 我可以使用以下方法同时更改轴上所有颜色的颜色 chart ChartAreas MyChart AxisY LabelStyle ForeColor Red 但是它不允许我为每个设置颜色 任何帮
  • 将 URL 转换为绝对路径

    有没有简单的方法可以将包含两字节字符的 URL 转换为绝对路径 我问的原因是我正在尝试寻找这样的资源 URL url getClass getResources getresources test txt String path url t
  • 从目录获取文件时排除某些文件扩展名

    How to exclude从目录获取文件时的某些文件类型 I tried var files Directory GetFiles jobDir 不过这个功能好像只能选择你想要包含的文件类型 不能排除 你应该自己过滤这些文件 你可以这样写
  • 我应该按照什么顺序包含头文件?

    我是编程新手 在我开始使用大量头文件后 头文件的主题让我陷入了困境 除此之外 我正在尝试使用预编译头 我还使用 SFML 库 因此我还必须包含那些标头 现在我有 stdafx h main cpp 然后是 A h A cpp B h B c
  • libgdx - 如何在舞台中添加背景图像?

    我正在学习 libgdx 但我陷入了困境 我在舞台中添加了一个按钮 现在我想在舞台中添加一个图像 以便该图像看起来像按钮的背景图像 我的意思是说按钮应该位于图像上 我一直在寻找教程但无法做到这一点 如何做呢 有什么帮助吗 您唯一需要做的就是
  • Nodemon 不工作:[nodemon] 由于更改而重新启动

    I use nodemon questions tagged nodemon作为节点中的开发依赖项 突然 CLI 中显示 nodemon 由于更改而重新启动 当我更改代码时 然后我已经全局安装了nodemon 但它仍然无法工作 它不适用于任
  • 如何在不使用if的情况下编写Fibonacci Java程序[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 在 int Fibonacci in
  • IE 下的脚本 onload/onerror(用于延迟加载)问题

    我正在重建我的延迟加载模块以接受异步请求 但我有一个大问题 Internet Explorer 不支持 script onload onerror 旧脚本确实全局评估了使用 ajax 同步调用读取的目标脚本源 它工作得很好 它是跨浏览器的
  • 有没有办法在 HTML5 视频上使用 DRM?

    由于 Flash 正在节节败退 我想知道是否有办法通过 DRM H264 ogg 和 WebM 保护 html5 视频 On the HTML5 上的 W3C 常见问题解答 http www w3 org html wiki FAQs Is
  • 如何在 Windows 中以编程方式更改 DNS 服务器?

    我想以编程方式更改 DNS 服务器 我不想建立DNS服务器 我只是想自动更改主备dns服务器 这项工作需要用Python来完成 您可以使用 os system 调用命令行工具来为您完成此操作 import os os system nets
  • VS2017任务运行资源管理器未找到任务

    我正在尝试在 VS 2017 内的 MVC Core 项目中设置 gulp 我有我认为有效的 gulpfile js var gulp require gulp var rimraf require rimraf var concat re
  • 在 DataBound 事件上获取绑定到 ListView 的数据

    我有一个 ListView 控件 并且已向该控件添加了一个 DataBound 事件 不知道这是否正确 我想从该事件访问绑定到该特定 ItemTemplate 的数据 这可能吗 C 解决方案 protected void listView
  • 当 contenteditable 中有多行时,替换光标前的单词

    我想替换光标之前的单词contenteditablediv 另见在文本区域或 contenteditable div 中键入 TAB 时检测最后写入的单词 https stackoverflow com questions 50794324
  • “忙碌”效果叠加

    我有一个 wpf 应用程序 它执行非常繁重的操作 其中用户需要等待应用程序 思考 我想要做的是 当应用程序的主线程正在思考时 另一个线程将禁用整个窗口并给它一种灰色的颜色 并且屏幕中间会出现一个圆形进度条 这是一个大问题 我真的不需要整个代
  • 类型“ViewController”不符合协议“UITableViewDataSource”

    很快就开始练习了 在单个 ViewController 中我试图制作一个UITableView 在故事板中 我设置了数据源和委托 我在这里收到错误 ViewController 不符合协议 UITableViewDataSource cla
  • SqlProfileProvider - 您可以在项目中使用 Profile.GetProfile() 吗?

    我正在尝试在应用程序中使用 SqlProfileProvider 但似乎无法按照我想要的方式使用它 我希望能够简单地调用这样的配置文件 Profile p Profile GetProfile naspinski p Organizatio
  • 在 Visual Studio 2010 中调试 exe

    有没有办法使用 Visual Studio 2010 通过 Shift 双击运行 exe 来调试外部 exe 通常 要在特殊模式下运行应用程序 我们必须按 Shift 键并双击 exe 但我在启动时遇到了一个错误 我想我需要添加一个命令行参
  • 如何替换cmd.exe中的百分号字符?

    在 Windows 命令提示符中 我尝试替换中的空格set string Hello World用字符串 20 天真地尝试像这样使用字符串文字 20 set string string 20 结果是HelloWorld20 尝试使用转义字符