【发布时间】:2013-03-13 12:04:49
【问题描述】:
我正在尝试制作一个可以找到并重置您的 Minecraft 的 Minecraft 批处理程序。问题是,我要发布它,每个人都会有不同的用户名,并不是所有的人都会有 Vista+ 和C:\Users\Username 下的用户。有些人会把它放在C:\Documents and Settings\Username 或类似的地方。
这是我已有的代码。
@Echo off
set UserProfile = Jackson
set Find = Desktop
pause
FOR /D %%Find in ("C:\Users\%UserProfile%\") DO pause
这就是我所拥有的。显然这是错误的,但我需要一些帮助。是的,我知道如果我要走那条路,上面应该是set /p UserProfile = Insert username here,但我有它用于测试。我就是无法让FOR 工作。我使用了错误的命令吗?我一直在尝试研究它,但找不到有效的解决方案。提前感谢您的帮助!
附:如果你不知道隐藏文件夹我会寻找它的C:\Users\Username\Appdata\Roaming\.minecraft
我在执行 FOR 时一直遇到这个问题。即使在暂停的情况下,它也会关闭 cmd 窗口。如果我在没有批处理脚本的情况下手动执行(输出到 cmd.exe),那么它会显示 %%Find was unexpected at this time. 我该如何解决?
【问题讨论】:
-
其他用户脚本失败的原因是因为他们假设您将它们放入批处理脚本,而不是命令提示符。只需删除一个百分号..
-
@ProfPickle 能否请您发布代码。我对新批次的东西不感兴趣。我正在把它放到一个批处理脚本中,正如你从代码行中看到的那样,我说“我要发布它,每个人都会有不同的用户名”
-
如果您在提示符下直接执行
FOR命令,则正确语法为for ... %v in ...如果您将FOR作为批处理文件的一行执行,则语法为@987654331 @。对元变量(循环控制变量 - 在这种情况下为v)的任何引用都必须遵循此规则 - 从提示符,单个%和批处理文件中,%%。元变量只能是单个字母并且区分大小写。
标签: batch-file hidden directory minecraft