gpt4 book ai didi

batch-file - 管理带有重音字符的路径

转载 作者:行者123 更新时间:2023-12-04 01:40:01 25 4
gpt4 key购买 nike

在批处理中,指定名称包含重音字符的路径,文件系统中找不到文件,而
去除路径中的所有重音字符,找到这些文件。尽管如此,
我必须管理用重音字符写的路径。有没有办法解决这个问题?

如果您需要了解我的操作系统,我现在是 7 32。

谢谢

最佳答案

批处理默认配置无法打印 unicode 字符,但可以识别该字符并使用它。
这意味着您无法打印“ú”,但您可以访问名为“ú”的文件夹或触摸名为“ú”的文件。

然后,如果您的脚本无法访问带有重音字符的文件,可能是因为您的脚本的编码不是 ANSI,
所以在记事本中打开脚本并确保使用 ANSI 编码(没有 utf-8 或 unicode)保存它。

示例:

@echo off

CHCP 850 >NUL

for %%# in (*.txt) do (

Echo [+] reading File: .\%%~nx# | MORE
Type "%%~nx#"
)

Pause>NUL

输出:
[+] reading File: .\áéíóúàèìòù ñ Ñ ç Ç.txt

This is the text content of my file with ISO-Latin characters

如果要在 CMD 中打印重音字符,则需要进行字符转换,这可以解决问题:
@echo off
CHCP 850 >NUL
copy con Mychars.txt

在该提示中,您将输入所需的字符,例如“ éíóú ”,然后您将获得一个包含以下内容的“Mychars.txt”文本文件:
 ‚¡¢£

现在您可以使用该字符来打印重音字符:
@echo off
echo ‚¡¢£
Pause>NUL

输出:
éíóú

PS1:记得做所有我说的以ANSI编码保存脚本的事情。

PS2:注意我如何使用 CHCP 850 命令,这意味着 CMD 的代码页,默认情况下 CMD 使用 850 代码页,但我使用默认的 1250 代码页启动 CMD 以避免所有这些问题,因此在我的示例中我需要使用代码页 850 向您展示。

您可以使用注册表项设置默认的 CMD 代码页:
REG ADD "HKCU\Software\Microsoft\Command Processor" /V "Autorun" /T "REG_SZ" /D "chcp 1250 >NUL" /F >NUL 2>&1

您可以在此处阅读有关代码页的信息: http://msdn.microsoft.com/en-us/library/cc195064.aspx

关于batch-file - 管理带有重音字符的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16180652/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com