我不是程序员,希望你能帮助我。我正在使用 Windows 7。
我有一个 .BAT 文件,直到昨天它都运行良好,特别是如果我用来清除一系列 txt 文件内容的“break”命令失败了该怎么办。现在当我运行该命令时,我收到“访问被拒绝”错误语句。
这是向我提供错误消息的命令:
设置日期1=10-26-14
中断 > e:\folder1\folder2\%Date1%\file1.txt
这是我尝试运行 .BAT 文件时命令窗口中显示的内容
E:\folder1\folder2>break \file1.txt 1>e:\folder1\folder2\10-26-14
访问被拒绝
奇怪的是,这个命令在我的另一个 .BAT 文件中运行良好。下面是该 .BAT 文件中的“break”命令以及命令窗口中显示的相应文本 - 请注意,此命令窗口中显示的命令窗口文本与上述错误语句附带的命令窗口文本有何不同
set Date1=10-26-14
break > e:\folder1\folder2\%Date1%\file2.txt
命令窗口中显示的文本
E:\folder1\folder2>break 1>e:\folder1\folder2\10-26-14\file2.txt
有什么想法我可以做些什么来解决这个问题?
答案1
我的“break”命令坏了
您需要寻找替代解决方案。break
对 Windows 没有影响。
休息 /?
设置或清除 DOS 系统上的扩展 CTRL+C 检查
这是为了与 DOS 系统兼容而存在的。在 Windows 下无效。
如果启用了命令扩展,并且在 Windows 平台上运行,则 BREAK 命令将在被调试器调试时输入硬编码断点。
要创建一个空文件:
使用删除现有文件德尔。
创建一个空文件。可以在以下位置找到几种方法:如何从批处理文件创建空文本文件?。
进一步阅读
- Windows CMD 命令行的 AZ 索引- 与 Windows cmd 行相关的所有事物的绝佳参考。
- 德尔- 删除一个或多个文件。
答案2
如果我不得不打赌,问题在于变量值末尾的空格。更改为
set "Date1=10-26-14"
break > "e:\folder1\folder2\%Date1%\file1.txt"
虽然这应该没有问题,但更清楚的是使用
type nul > "e:\folder1\folder2\%Date1%\file1.txt"
生成的文件同样是 0 字节,但现在我们更清楚代码在做什么