作者murraious (murraious)
看板EZsoft
标题Re: [请问] 用bat取到的本地端SVN版号做档名
时间Fri Sep 19 05:56:19 2014
※ 引述《kobenein (哈哈哈)》之铭言:
: 目前我已经可以用 svn log -l 1 这个指令抓到我要的东西
: 像是以下
: D:\Firmware\abc>svn log -l 1
: ------------------------------------------------------------------------
: r7611 | XXXXX@XXXXX | 2014-09-09 17:27:17 +0800 (周二, 09 九月 2014) | 1
: line
: ------------------------------------------------------------------------
: 我想把 r7611这个字串拿来当成档名
: 但一直试不成功
: 是不是只要cmd window印出来的东西都可以拿来用?
: 谢谢
FOR /F "skip=1 tokens=1,2,3 delims=|" %a in ('svn log -l 1') do @echo %a, %b, %c
解释一下,重点在 "skip=1 tokens=1,2,3 delims=|"
skip=n 不要解析前n行,因为第一行是分隔线,我们把他滤掉
delims=| 用"|"来切token
tokens=1,2,3 切出来的token,预设只会保留第一个,你可以多抓几个栏位,这里示范是抓前三个栏位
如果你想抓第一个与第三个栏位,就用tokens=1,3,後面调用时就是echo $a, %b
唉,还是 awk, sed 好用。
建议下载一套好用的 free unix tool:
http://unxutils.sourceforge.net/
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 96.44.189.100
※ 文章网址: http://webptt.com/cn.aspx?n=bbs/EZsoft/M.1411077382.A.870.html