有没有办法处理批处理文件命令目录中使用的特殊字符?

Posted

技术标签:

【中文标题】有没有办法处理批处理文件命令目录中使用的特殊字符?【英文标题】:Is there any way to handle special characters used in a directory for batch file command? 【发布时间】:2022-01-06 03:33:26 【问题描述】:

我的批处理文件命令是:

RMDIR /S /Q C:\Users\user\Desktop\Scripts\!???????????????????????????????????????????? RD /S /Q C:\Users\user\Desktop\Scripts\!????????????????????????????????????????????

如您所见,我正在尝试删除 !?????????????????????????????????? ??????文件夹及其子文件夹。我尝试使用单引号和双引号、反引号和反斜杠来处理所述文件夹的每个字符,但似乎没有任何效果。

如何在批处理文件命令中处理这个问题?

[编辑 /]

如上所示目录的文本名称不使用标准的 ANSI 字符。从上面复制,到一个 UTF-8 编码的文件,并以 Hex 模式显示,它看起来像这样:

【问题讨论】:

现在是哪个? Powershellbatch-file? 我在您的问题中添加了其他信息,因为您没有明确说明您用于目录名称的所有字符都不在 ANSI 字符的标准范围内。如果我的附加信息不正确,请努力修复它。 @Gerhard 嗨!它用于批处理文件。谢谢。 @Compo 编辑一切顺利。感谢您的帮助。 【参考方案1】:

你需要做的我在每个特殊字符之前添加一个抑扬符。就是这个^符号。在任何受影响的字符之前粘贴其中一个,它应该可以正常运行而不会影响您的代码。

【讨论】:

我添加了 ^ 并没有解决它。这就是我对命令所做的:RMDIR /S /QC:\Users\user\Desktop\Scripts\!^?^?^?^?^?^?^?^?^?^?^?123 RD /S /QC:\Users\user\Desktop\Scripts\!^?^?^?^?^?^?^?^?^?^?^?123 但我得到了这个:C:\Users\user\Desktop\脚本>RMDIR /S /QC:\Users\user\Desktop\Scripts\!≡¥Öï≡¥Ö¥≡¥Öñ≡¥Ö⌐≡¥Öñ≡¥Ö£≡¥Öº≡¥Öû≡¥ÖÑ≡¥ Ö¥≡¥Ö«123 RD /S /QC:\Users\user\Desktop\Scripts\!≡¥Öï≡¥Ö¥≡¥Öñ≡¥Ö⌐≡¥Öñ≡¥Ö£≡¥Öº≡¥Öû ≡¥ÖÑ≡¥Ö¥≡¥Ö«123 系统找不到指定的文件。该系统找不到指定的文件。系统找不到指定的文件。 抱歉,如果我想向您展示的内容没有正确的格式,但我希望我很清楚。 文件路径是否正确? 是的,没错。我刚刚从文件资源管理器中复制了它,所以我不会错过任何东西。

以上是关于有没有办法处理批处理文件命令目录中使用的特殊字符?的主要内容,如果未能解决你的问题,请参考以下文章

因字段包含特殊字符,导致ERP系统部分操作报错的原因处理办法与思考

因字段包含特殊字符,导致ERP系统部分操作报错的原因处理办法与思考

linux 特殊符号怎样用sed替换

get请求时特殊符号处理

编译器错误信息: CS1056: 意外的字符的处理办法

如何在批处理文件中识别用户输入帮助(/?)