Scr*_*Dev 1 svn windows cmd batch-file
我试图在命令提示符下仅获取SVN分支的名称,并将其设置为变量。
我能够成功获取URL,但是在仅为分支名称设置值时遇到了麻烦。
不幸的是,%branch%最终为空。
如果还有其他更简单的方法也不错。
注意:默认情况下,Windows 7上未安装任何工具(SVN除外)。
FOR /F "tokens=* usebackq" %%F IN (`svn info --show-item url`) DO SET fullUrl=%%F
ECHO %fullUrl%
FOR /F "delims=/" %%F IN (%fullUrl%) DO SET branch=%%F
ECHO %branch%
Run Code Online (Sandbox Code Playgroud)
命令窗口输出:
C:\workspaces\Release_10_1>FOR /F "tokens=* usebackq" %F IN (`svn info --show-item url`) DO SET fullUrl=%F
C:\workspaces\Release_10_1>SET fullUrl=https://svn/path/branches/releases/Release_10_1
C:\workspaces\Release_10_1>ECHO https://svn/path/branches/releases/Release_10_1
https://svn/path/branches/releases/Release_10_1
C:\workspaces\Release_10_1>FOR /F "delims=/" %F IN (https://svn/path/branches/releases/Release_10_1) DO SET branch=%F
The system cannot find the file https://svn/path/branches/releases/Release_10_1.
C:\workspaces\Release_10_1>ECHO
ECHO is on.
Run Code Online (Sandbox Code Playgroud)
fullUrl = https://svn/path/branches/releases/Release_10_1
分支=Release_10_1
fullUrl = https://svn/path/branches/releases/Release_10_1
分支=“
FOR %%F IN ("%fullUrl%") DO SET "branch=%%~nxF"
ECHO %branch%
Run Code Online (Sandbox Code Playgroud)
选择中的“文件名” 的Name和会在final之后产生该部分。 eXtension%%F/
插入的引号set以确保在分配的值中省略尾随空格。