相关疑难解决方法(0)

Windows RENAME 命令如何解释通配符?

Windows RENAME (REN) 命令如何解释通配符?

内置的帮助工具没有帮助 - 它根本不解决通配符。

微软的TechNet XP联机帮助也好不了多少。以下是关于通配符的全部内容:

“您可以在任一文件名参数中使用通配符(*?)。如果您在 filename2 中使用通配符,则通配符表示的字符将与 filename1 中的相应字符相同。”

没有太大帮助 - 可以通过多种方式解释该语句。

在某些情况下,我已经成功地在filename2参数中使用通配符,但它一直是反复试验。我无法预测什么有效,什么无效。我经常不得不使用 FOR 循环编写一个小批量脚本来解析每个名称,以便我可以根据需要构建每个新名称。不是很方便。

如果我知道如何处理通配符的规则,那么我认为我可以更有效地使用 RENAME 命令,而不必经常求助于批处理。当然,了解规则也有利于批量开发。

(是的 - 这是我发布成对问题和答案的情况。我厌倦了不知道规则并决定自己进行实验。我想很多其他人可能对我的发现感兴趣)

windows command-line rename batch-file cmd.exe

89
推荐指数
2
解决办法
17万
查看次数

为什么这个批处理文件在“REM”行上失败?

我指的是使用批处理文件将文本添加到文件名末尾(但在扩展名之前)的问题,因为我遇到了同样的问题。使用带有所有更新的 Windows 7 32 位企业版(我知道,我知道......)我写了一个pdfrename.bat只有三行的小批处理文件:

  1. 评论,开始REM 没有“隐藏”的延续迹象更多的行权

  2. 建议的命令,从@Karan 提供的源代码复制粘贴,注释掉REM

  3. 批处理采用的命令(加倍%):

    REM Rework 2020-12-16
    REM for %a in (*.txt) do ren "%~a" "%~na version 1%~xa"
    for %%F in (*.pdf) do ren "%%~F" "%%~nF OdB%%~xF"
    
    Run Code Online (Sandbox Code Playgroud)

从命令提示符运行命令 (3.),

for %F in (*.pdf) do ren "%~F" "%~nF OdB%~xF"
Run Code Online (Sandbox Code Playgroud)

工作正常。

但是pdfrename.bat从 Windows 资源管理器执行整个批处理文件失败。从命令提示符运行批处理文件pdfrename.bat会产生错误消息语法错误:

Die folgende Verwendung des Pfadoperators zur Ersetzung eines Batchparameters
ist ungültig: %~na version 1%~xa"
[...]
Run Code Online (Sandbox Code Playgroud)

你不需要懂德语。重要的一点是 …

windows batch comments command-line batch-file

36
推荐指数
3
解决办法
6850
查看次数

如何在 Windows 命令提示符下遍历目录?

Windows 命令提示符 (cmd.exe) 提供 FOR 命令。它可用于对目录中的任何文件进行操作。例子:

\> dir
28.05.2012  18:25                69 buildall.bat
28.05.2012  07:48    <DIR>          include
28.05.2012  18:23    <DIR>          sub-607

\> for %d in (*.bat) echo %d
Run Code Online (Sandbox Code Playgroud)

如何对给定目录中的所有子目录执行相同的操作(非递归)?这个想法是:

for %d in (sub-*) do (
  cd %d
  dosomething
  cd ..
)
Run Code Online (Sandbox Code Playgroud)

上面的 for 语句没有找到 sub-607 因为它不是文件

windows-7 command-line

6
推荐指数
1
解决办法
2万
查看次数