批处理文件 - 名称[关闭]

Posted

技术标签:

【中文标题】批处理文件 - 名称[关闭]【英文标题】:Batch files - names [closed] 【发布时间】:2019-07-09 17:31:36 【问题描述】:

我有一个代码在桌面上查找具有特定模式的 png 文件并将它们移动到另一个目录。 在浏览文件时,我想检查名称中是否有模式。 我就是这样做的:

for %%f in (C:\Users\user\Desktop\*.png) do (
    if %%f==Hearthstone Screenshot*.png (
    move %%f C:\destination\
    )   
)

注意:所有需要的文件都以炉石截图开头,然后是一些数字。 我的主要问题在第 2 行。我无法让它工作。

【问题讨论】:

这里怎么了? @double-beep OP 说,必须以Hearthstone Screenshot 开头,他不知道怎么做,所以我不明白你的问题? 当我遇到这样的问题时,我尝试在if... 之前添加类似echo %%f 的命令 if 不支持通配符。 move "%USERPROFILE%\Desktop\Hearthstone Screenshot*.png" "C:\destination\" 怎么了? 【参考方案1】:

这是怎么回事:

move C:\Users\user\Desktop\HearthstoneScreanshot*.png C:\Users\user\Desktop\Hearthstonescreanshot\

【讨论】:

Hearthstone Screenshot 和双引号之间缺少空格。 %USERPROFILE%\Desktop\Hearth... 也可能有意义。 还有2>nul【参考方案2】:

根据您的需要,也许这就是您正在寻找的……

@RoboCopy "%UserProfile%\Desktop" "%UserProfile%\Desktop\HearthStone_Screenshots" "HearthStone Screenshot*.png" /MOV>Nul 2>&1

这应该会自动创建保存目录HearthStone_Screenshots,如果它不存在的话。


注意:我已经更正了我认为是您非常糟糕的拼写问题。如果这些文件和目录应该使用ea 而不是ee 命名,请根据需要重新调整。

【讨论】:

以上是关于批处理文件 - 名称[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

将远程计算机名称变量从批处理文件传递到 hta 并在弹出窗口或 html 窗口中打印出值 [关闭]

如何获取具有特定驱动器名称的驱动器的驱动器号? [关闭]

使用批处理文件对 c# 解决方案进行条件编译 [关闭]

批处理文件 If 语句导致 CMD 关闭且不起作用

文件处理 总结

我的批处理文件过早关闭程序