Fer*_*eQO 5 batch command-line svn batch-file cmd.exe
我有一个批处理文件,我在其中传递要用作参数的文件夹的名称。但是现在我想让用户只指定他们想要作为参数传递的文件夹名称的前几个字符,从而让它更聪明一点。
例如,当我当前文件夹中有三个文件夹时:
每当我键入“An”作为参数时,我都希望批处理文件遍历当前文件夹中的文件夹并获取以指定字符串开头的第一个文件夹的名称。在这种情况下,这将是“另一个文件夹”。
我知道如何在 C# 中做到这一点,但我是批处理文件的新手。有人可以帮我解决这个问题吗?如果这是一个菜鸟问题,我很抱歉,但我似乎真的无法让它发挥作用。
这个脚本的一些背景:我目前有一个文件夹用于我的项目,其中包含大量文件夹,这些文件夹都在版本控制 (TortoiseSVN) 之下。为了让事情更简单,我创建了一个批处理文件,我只需要在其中键入svnlog "some folder name"以显示该项目的 SVN 日志。当前批次:
cd C:/Projects/
SET p=C:/Projects/
SET a=%1
SET pa=%p%%a%
TortoiseProc.exe /command:log /path:%pa%
Run Code Online (Sandbox Code Playgroud)
好吧,我已经想通了。请参阅下面的批处理文件。
cd C:/Projects/
SET p=C:/Projects/
SET a=%1
for /D %%x in (%a%*) do if not defined f set "f=%%x"
SET pa=%p%%f%
TortoiseProc.exe /command:log /path:%pa%
Run Code Online (Sandbox Code Playgroud)