“Find in Files” functionality from a bash shell

Programming

Since I always forget how to do this I thought I’d just post it here 🙂

This information is taken from http://www.athabascau.ca/html/depts/compserv/webunit/HOWTO/find.htm#EX03 [edit: the page is no longer serving here is a link to the archive.org’s cached version] and is certainly more detailed then what I will post. So without further ado, :

Scenario 1: You want to find all files that contain the string “primary” in the current directory:

find . -exec grep -q "primary" '{}' ; -print

and it will yield something like:

./fix-ie.css./page.tpl.php./print.css./style-rtl.css./style.css./template.php

 

Scenario 2: You want to find all files that contain the string “primary” in the current directory and list the lines that contain your search term:

find . -exec grep "primary" '{}' ; -print

and it will yield something like (ignore the color coding…) :

p "primary" '{}' ; -print ul.primary { ./fix-ie.css <?php if (isset($primary_links)) : ?> <?php print theme('links', $primary_links, array('class' => 'links pri mary-links')) ?> <?php if ($tabs): print '<ul class="tabs primary">'. $tabs .'</ul></di v>'; endif; ?> ./page.tpl.php ul.primary-links, ul.secondary-links, ./print.css ul.primary-links { ul.primary-links li { ul.primary { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ul.primary li a:after { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ./style-rtl.css ul.primary-links { ul.primary-links li { ul.primary-links li a, ul.primary-links li a:link, ul.primary-links li a:visited { ul.primary-links li a:hover, ul.primary-links li a.active { ul.primary, ul.primary li, ul.secondary, ul.secondary li { ul.primary { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ul.primary li.active a, ul.primary li.active a:link, ul.primary li.active a:visi ted, ul.primary li a:hover, ul.primary li.active a, ./style.css return menu_primary_local_tasks(); ./template.php (uiserver):u37978795:~/hosted/drupal.monkk.com/themes/garland > find . -exec gre p "primary" '{}' ; -print ul.primary { ./fix-ie.css <?php if (isset($primary_links)) : ?> <?php print theme('links', $primary_links, array('class' => 'links pri mary-links')) ?> <?php if ($tabs): print '<ul class="tabs primary">'. $tabs .'</ul></di v>'; endif; ?> ./page.tpl.php ul.primary-links, ul.secondary-links, ./print.css ul.primary-links { ul.primary-links li { ul.primary { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ul.primary li a:after { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ./style-rtl.css ul.primary-links { ul.primary-links li { ul.primary-links li a, ul.primary-links li a:link, ul.primary-links li a:visited { ul.primary-links li a:hover, ul.primary-links li a.active { ul.primary, ul.primary li, ul.secondary, ul.secondary li { ul.primary { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ul.primary li.active a, ul.primary li.active a:link, ul.primary li.active a:visi ted, ul.primary li a:hover, ul.primary li.active a, ./style.css return menu_primary_local_tasks(); ./template.php (uiserver):u37978795:~/hosted/drupal.monkk.com/themes/garland > find . -exec gre p -q "primary" '{}' ; -print ./fix-ie.css ./page.tpl.php ./print.css ./style-rtl.css ./style.css ./template.php (uiserver):u37978795:~/hosted/drupal.monkk.com/themes/garland > less page.tpl.ph p (uiserver):u37978795:~/hosted/drupal.monkk.com/themes/garland > find . -exec gre p -q "primary" '{}' ; -print ./fix-ie.css ./page.tpl.php ./print.css ./style-rtl.css ./style.css ./template.php (uiserver):u37978795:~/hosted/drupal.monkk.com/themes/garland > find . -exec gre p "primary" '{}' ; -print ul.primary { ./fix-ie.css <?php if (isset($primary_links)) : ?> <?php print theme('links', $primary_links, array('class' => 'links pri mary-links')) ?> <?php if ($tabs): print '<ul class="tabs primary">'. $tabs .'</ul></di v>'; endif; ?> ./page.tpl.php ul.primary-links, ul.secondary-links, ./print.css ul.primary-links { ul.primary-links li { ul.primary { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ul.primary li a:after { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ./style-rtl.css ul.primary-links { ul.primary-links li { ul.primary-links li a, ul.primary-links li a:link, ul.primary-links li a:visited { ul.primary-links li a:hover, ul.primary-links li a.active { ul.primary, ul.primary li, ul.secondary, ul.secondary li { ul.primary { ul.primary li a, ul.primary li.active a, ul.primary li a:hover, ul.primary li a: visited, ul.primary li.active a, ul.primary li.active a:link, ul.primary li.active a:visi ted, ul.primary li a:hover, ul.primary li.active a, ./style.css return menu_primary_local_tasks(); ./template.php

And there you have it, enjoy!

 

Trackback URL for this post:

http://blog.monkk.com/trackback/59