2

我正在尝试查看在我的 cvs 存储库中本地修改了哪些文件。我试过这个

cvs update -qn | grep "^M "

它有点像我期望的那样,它显示了一堆

M sources/..../a.cpp
M sources/.../b.cpp

但输出还包含一堆

cvs update: source/.../somefile.h is no longer in the repository

为什么上面这行会出现在 grep 输出中。我假设“^M”会强制 grep 只匹配以“M”开头的行

4

1 回答 1

1

它几乎可以肯定是来自 cvs 的 stderr 流的输出。尝试

 cvs update -qn 2>&1 | grep "^M "

就个人而言,我讨厌丢弃错误消息,我会将该信息捕获到文件中

 cvs update -qn 2>./filesMissingRpt.txt | grep "^M "

我无法对其进行测试,但非常有信心这将解决您的问题。

IHTH。

于 2013-08-21T18:52:19.233 回答