我正在寻找可以从Mac OS X终端运行的单线程帮助。我在我的Mac上使用MAMP进行网页开发。我的“/ Applications/MAMP/htdocs”目录中有很多CakePHP项目。为了简单起见,我们只想说,我有两个CakePHP的项目,这是find /Applications/MAMP/htdocs -type d -iname Controller*
命令的输出:帮助“查找”和“grep”命令
/Applications/MAMP/htdocs/my_cake1.3_project/app/controllers
/Applications/MAMP/htdocs/my_cake1.3_project/app/tests/cases/controllers
/Applications/MAMP/htdocs/my_cake1.3_project/cake/console/templates/skel/controllers
/Applications/MAMP/htdocs/my_cake1.3_project/cake/console/templates/skel/tests/cases/controllers
/Applications/MAMP/htdocs/my_cake1.3_project/cake/libs/controller
/Applications/MAMP/htdocs/my_cake1.3_project/cake/tests/cases/libs/controller
/Applications/MAMP/htdocs/my_cake1.3_project/cake/tests/test_app/controllers
/Applications/MAMP/htdocs/my_cake1.3_project/cake/tests/test_app/plugins/test_plugin/controllers
/Applications/MAMP/htdocs/my_cake2_project/app/Controller
/Applications/MAMP/htdocs/my_cake2_project/app/Test/Case/Controller
/Applications/MAMP/htdocs/my_cake2_project/lib/Cake/Console/Templates/skel/Controller
/Applications/MAMP/htdocs/my_cake2_project/lib/Cake/Console/Templates/skel/Test/Case/Controller
/Applications/MAMP/htdocs/my_cake2_project/lib/Cake/Controller
/Applications/MAMP/htdocs/my_cake2_project/lib/Cake/Test/Case/Controller
/Applications/MAMP/htdocs/my_cake2_project/lib/Cake/Test/test_app/Controller
/Applications/MAMP/htdocs/my_cake2_project/lib/Cake/Test/test_app/Plugin/TestPlugin/Controller
现在,有时候我想找到一段代码,我知道我曾经在我的一个CakePHP项目的控制器,但我不记得它是哪个项目,所以我想搜索它们。不过,我不想浪费时间在“app/tests/cases/controllers”文件夹或“cake /”中的任何文件夹中搜索。该find /Applications/MAMP/htdocs -type d -iname Controller* | grep -i /app/Controller
命令给我我想要在搜索文件夹列表:
/Applications/MAMP/htdocs/my_cake1.3_project/app/controllers
/Applications/MAMP/htdocs/my_cake2_project/app/Controller
我只需要找到一种方法,采取输出,添加斜线和星号(/ *)到每一行的末尾,并将每行传送给grep -il "string to search for"
命令。任何帮助,将不胜感激。谢谢!
我得到了两种解决方案的工作!非常感谢你!为了获得第一个解决方案来处理我的特定需求,我必须用'“*/app/Controller *”替换'“*/app/Controller/*。php”'(CakePHP <2.0是“controllers”,CakePHP > = 2.0是没有“s”的“Controller”)。为了得到第二种解决方案来处理我的特定需求,我必须用'sed -E'替换'sed -r'。再次感谢! – Nick 2012-02-11 00:04:58