如何一次处理多个文件?

如何一次处理多个文件?

我必须用这个薇拉++针对多个*.cpp*.h文件的工具。我接受文件名作为参数。如何搜索*.cpp文件并将它们发送到vera++?这是一行代码还是我需要一个批处理脚本?

答案1

仅限当前文件夹:

for %i in (*.cpp *.h) do vera++ "%~i"

包括子文件夹:

for /r . %i in (*.cpp *.h) do vera++ "%~i"

/r .表示“从当前文件夹开始”。如果要指定其他文件夹名称,请使用for /r newfolder

答案2

当然,这是文档中的一行代码。以下是选项:

  • 按照文档所说的去做。 文档说
    查找 . -name '*.h' | xargs vera++ -profile my_favourite
    并使用适当的工具集,例如微软自己的可下载的 SFUA 实用工具包在 Windows 7 上运行基于 UNIX 的应用程序子系统(Windows 7 旗舰版和 Windows Server 2008 R2 包装盒内附带) - 对于 Windows XP,可以下载并安装UNIX 版本 3.5 的服务) 有适用于 Windows 的工具,例如findxargs。当然,还有操作系统赛格威, 和工具
  • 如果你正在使用JP Software 的 TCC/LE您可以使用内置SELECT命令以交互方式选择要处理的文件:
    选择 vera++ [*]
    注意方括号,它使所有文件名组合成一个命令。
  • 使用正统的文件管理器, 例如Windows 版文件指挥官或者远的,您可以类似地选择要以交互方式处理的文件,然后使用适当的按键将其粘贴到命令行中。
  • 如果你正在使用JP Software 的 TCC/LE您可以使用内置FOR命令在找到文件后处理它们(例如DIR命令
    DIR /B /S *.cpp;*.h|FOR F IN (@CON) do vera++ %F
    或者直接处理它们,因为FOR有一个递归选项:
    对于/RF 在(*.cpp;*.h)中 DO vera++ %F
    这当然会对找到的每个单独文件运行一次命令。
  • 或者你可以按照 Grawity 所说的去做。

相关内容