CMD:'■m'不被识别为内部或外部命令

web*_*elo 5 windows command-line command batch-file command-prompt

我试图让批处理文件工作.每当我尝试运行.bat时,命令行返回'■m'无法识别...错误,其中"m"是文件的第一个字母.例如:

md c:\testsource md c:\testbackup

返回

C:>"C:\ Users\Michael\Dropbox\Documents\Research\Media\Method Guide\Program\test .bat"

C:>■m'■m'不被识别为内部或外部命令,可操作程序或批处理文件.

我尝试过的事情:

  1. 更改路径变量,重新启动等.
  2. 更改文件目录(即从C运行:)
  3. 从Web运行示例文件(如上所述)以检查语法错误.

谢谢

Chr*_*ger 12

你在写什么文本编辑器?看起来您的文本编辑器可能会将文件保存为UTF-16编码的文本,cmd.exe无法处理.保存文件时,请尝试将"编码"/"文件编码"设置为"ANSI".

这导致第一个字节是字节顺序标记(告诉其他编辑如何处理文件),并且cmd.exe无法处理这个问题.


jua*_*cre 6

除了已批准的答案之外,我还要添加一个 PowerShell 命令是创建文件的命令的情况……PowerShell 默认使用 UTF-16 编码。

要解决您的问题,请强制文件编码如下: | out-file foo.txt -encoding utf8

基于这个其他答案的答案