batch-file - Forfiles 对待瑞典语的奇怪行为
问题描述
Forfiles
与瑞典字符不工作顺利...
我用的是瑞典电脑,Forfiles
对待瑞典字符很奇怪。它可以在一个瞬间正确对待,而在下一个瞬间变得愚蠢。我已经为这个问题苦苦挣扎了很长时间,我想我已经找到了解决方案,我的经验(没有)告诉我,是 forfiles 中的不同操作使它变得困难。
我必须CHCP 65001
在我的批处理文件中使用它才能使其工作。除. forfiles
_ CALL
然后它就会陷入困境。
然后我的解决方案是将那部分更改为 CHCP 1252
。没有完美地工作,但是当我把它全部导入一个“一些 textfile.txt”文件时,突然间一切都正常了。现在我可以在文件夹名称中使用瑞典语字符。
似乎该CALL
参数需要一个特殊的代码页才能工作,但在其余代码上使用它会失败......
不过有一个问题:为什么它表现得这么奇怪,为什么我需要>myfile.txt
在最后加上一个才能让它工作?
` CHCP 65001
forfiles /S /m * /c "cmd /c if @isdir==TRUE COPY myfile.bat @path"`
(即使文件夹有瑞典语字符 ( åäö
),这也有效,但使用代码页 1252 会失败。Myfile.bat 放置在每个文件夹中,并在下面调用时构建文件夹内容的 html 页面)。
` CHCP 1252
forfiles /S /m "myfile.bat" /c "cmd /c CALL @path" >> some textfile.txt`
(使用代码页 65001 将失败,但与代码页 1252 完美配合。它需要 `> 一些文本文件,没有它,它将失败。在每个文件夹中构建页面。)
DEL some textfile.txt
(该文件被删除,因为它只是垃圾(奇怪我需要这个文件))
CHCP 65001
(改回代码页 65001 以使其他一切正常工作。下面的代码为找到的每个文件夹构建了一个链接页,并且在每个正在创建的页面上都是相同的。)
forfiles /S /m * /c "cmd /c if @isdir==TRUE ECHO @path" >>anotherfile.txt
(感谢您的所有回答。当我知道更多一点时,我现在将重建它。小步骤,小步骤......)
解决方案
推荐阅读
- node.js - 由于“幻影”文件而无法切换分支
- angular - Angular6 和 angular-material 版本
- python - 如何使用定位器查找元素,其中多个元素 id 或类名相同?
- r - 为从旧变量中获得的新变量赋值
- r - NextMethod(.Generic) 中的错误:无法将“tsp”分配给 R 中的零长度向量
- python - python中的未知运算符
- javascript - 我的规则如何知道 eslint 何时处理完所有文件?
- c# - 是否可以从 MVC5 中的 Web 应用程序在客户端计算机中打开 Outlook 或 Word(MS Word)
- three.js - 为什么dds文件环境图是透明的?
- swift - 在按钮操作下声明的函数不起作用