SVN 抓取状态
有很多时候会有多个工程师操作,但我只想查看某一种状态:
1.svn st 后页面显示M ! A一些状态 我想只抓取带有M 状态的文件或目录
方法 1:直接使用 grep
过滤
svn status | grep '^M' | awk '{print $2}'
grep '^M'
:匹配以M
开头的行(^
表示行首)。awk '{print $2}'
:提取第二列(文件路径)。
更简洁的写法:
svn status | awk '/^M/ {print $2}'
方法 2:使用 svn status
的 --show-updates
选项(可选)
如果需要排除本地修改与服务器冲突的情况(如 M *
状态):
svn status --show-updates | grep '^M ' | awk '{print $2}'
'^M '
会严格匹配仅包含M
(后跟空格)的状态,忽略M *
。