【发布时间】:2013-03-21 10:59:15
【问题描述】:
我正在尝试使用 find 命令从我的主目录中查找所有签入 RCS 的文件。这包括以c,v 之类的文件结尾的文件。当我运行诸如
find . -name \*v
find . -name \*c,v
这与我想要的方式很接近,并且会给我看起来像的文件
./LABTECH/RCSlab/trig/RCS/main.c,v
这很好,除非我出于某种原因在我的计算机上有一个以 v 或 c,v 结尾但不在 RCS 中的随机文件,它也会返回该文件。像find . -name \*RCS\*c,v 这样的东西不起作用并且什么也不返回。 find . -name RCS\* 将返回 RCS 目录,但不会返回 RCS 目录中的任何文件。
有没有办法让我从我的主目录开始获得一个 find 命令来返回 RCS 目录中的所有文件。我知道我可以在之后过滤掉不需要的文件,但它只需要显示 RCS 目录中的文件即可。
在阅读了所有答案后,我决定假设 ,v 是 RCS 文件是解决此问题的最佳方法,因为我们还没有为我的老师编写脚本来问我们这样的问题。我们也不应该通过管道输入 xargs 或 grep 来解决这个问题,并且 -path 在我的 unix 版本上不起作用。从 perreal 知道使用 -name 不允许我匹配 '/' 这有助于清除我有但没有问的其他一些问题。我已经了解到,如果没有 -path 或某种类型的以下命令或脚本,就无法做到这一点。谢谢大家的帮助。
【问题讨论】: