|
1
85
实际上,发生这种情况需要两个条件:
看见 The system cannot find the batch label specified Batch-as-batch-can!
David A. Gray
提及
in the comments
看到(在Windows 10上)什么
Marshal
answer
显示于2014年(可能在Windows 7或8上):一个脚本/批处理程序(
2020年2月, kinar in the comments :
jeb 的 answer 更多信息:这是一个未定义标签的案例。
|
|
|
2
47
我以前也遇到过同样的问题。然而,根本原因根本不是CRLF。这是因为在脚本中,我执行了一个外部程序,比如Ant,但没有放入
|
|
|
3
11
根本原因是DOS命令行处理器(shell程序)将UNIX行尾字符作为标签的一部分。由于go-to零件从未将其用作标签,因此从未找到,因为此类标签确实不存在。解决方案是在每个目标标签的末尾添加一个额外的空格,甚至更好地在每一行中添加空格。现在,UNIX的行尾不再起作用,因为空格充当分隔符,并且一切正常。 |
|
4
11
只是 unix2dos 这是一个需要解决的问题。 |
|
|
5
5
您还应该确保在调用其他脚本时使用CALL,而不是在调用方的环境中调用它们。 |
|
|
6
3
解决方案是将所有行尾更改为CR+LF DOS样式。 这个问题令人困惑,因为批处理文件基本上是有效的,重新排列行改变了效果。
函数C将导致错误“系统找不到指定的批次标签”。奇怪的是,它可以通过重新安排通话而消失。 也许VonC的意思是“批处理文件必须使用CRLF行结尾”。 |
|
|
7
3
有多种可能的方法获取错误。
|
|
|
8
2
在从word复制开始命令并将其粘贴到命令窗口后,我遇到了这个问题。前面有一个带“-”的选项,并且认为它看起来和DOS一样“-”不是:)在我自己键入“-”后,问题解决了,批处理工作正常。。。一个很难找到的问题。。。。 |
|
|
9
0
有点不同的用例。。。 我当时正在调用一个bat脚本 包装工 使用 供应器(OpenSSH)。
最初,我只是开始通过扩展调用本身和内联子例程代码来完全删除子例程。我对只有一个调用(没有代码重复)的所有实例都这样做。 但是,是的,我确实偶然发现了一艘来自3,4个地方的潜艇。在尝试了一切之后,这对我来说是有效的 PS:脚本非常古老,但管理层需要我通过packer来完成(我们有一个第二天的计划,用Ansible/Chef来代替它)。 |