我有一个目录很少的项目(事先并不知道所有目录).我想发出一个命令来查找包含源的所有目录.像找到的东西. -name“* .cpp”这将给我一个源列表,而我只想要一个包含它们的目录列表.项目结构事先不知道,目录X中可能存在某些源,而子目录X / Y中可能存在其他源.将打印包含源的所有目录列表的命令是什么?
解决方法:
find . -name "*.cpp" -exec dirname {} \; | sort -u
如果(a)你有GNU查找或最新版本的BSD查找和(b)你有最新版本的dirname(例如GNU coreutils 8.21或FreeBSD 10但不是OSX 10.10),那么,为了更高效率,使用(Hat)提示:Jochen和mklement0):
find . -name "*.cpp" -exec dirname {} + | sort -u
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。