【问题标题】:Windows BAT script for cp alias produces errorcp 别名的 Windows BAT 脚本产生错误
【发布时间】:2021-04-09 22:04:07
【问题描述】:

我写了一个名为cp.bat的文件,这个文件的内容是:DOSKEY cp=COPY $* copy。我将此文件保存在c:\users\myname\aliases。我还将此路径添加到我的环境中,以便cmd 可以执行它。

当我现在在我的cmd 中输入cp 时,cp 中的 c 的输出是一个奇怪的字符。

我需要这个脚本来工作,因为我想在我的机器上安装鸡计划鸡蛋,但是chicken-install 命令执行多个cp 命令并且这些在cmd 中无法识别。

我也尝试过修改 egg 的构建脚本,但每次调用chicken-install 命令时都会重新生成它。

如果有人能解释我如何在 Windows 机器上正确安装鸡蛋,这也会有所帮助。我觉得这种解决方法不应该是必要的。提前致谢。

【问题讨论】:

  • 很可能,您的编辑器是问题的根源。批处理文件应使用文本编辑器而不是文字处理器以严格的 ANSI 格式创建。 Notepad 勉强够用; Notepad++ 更好 - 我使用 Editplus
  • 你完全正确。我用记事本++打开它,编码设置为UTF-8-BOM,我把它放到ANSI并保存。现在它工作正常。非常感谢。

标签: batch-file chicken-scheme doskey


【解决方案1】:

就像 Magoo 提到的:

很可能,您的编辑器是问题的根源。批处理文件应使用文本编辑器而不是文字处理器以严格的 ANSI 格式创建。记事本勉强够用; Notepad++ 好得多——我用的是 Editplus

编码搞砸了,它被设置为 UTF-8-BOM,所以我将它更改为 ANSI,它可以正常工作。

【讨论】:

    【解决方案2】:

    如果您使用的是 CHICKEN 5,它不应该发出 cp 命令;仅当您使用mingw 平台目标时,它才应该发出使用内置 Windows 命令的批处理文件。您是否在每次 make 调用中都使用了 PLATFORM=mingw 选项?

    如果您使用的是mingw-msys (or cygwin) 平台,那么它将发出 UNIX 风格的命令。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-27
      • 1970-01-01
      相关资源
      最近更新 更多