{"id":3457,"date":"2015-04-07T14:58:08","date_gmt":"2015-04-07T14:58:08","guid":{"rendered":"http:\/\/www.deuzebranaweb.com.br\/?p=3457"},"modified":"2015-04-07T14:58:08","modified_gmt":"2015-04-07T14:58:08","slug":"busca-dentro-de-arquivos-usando-o-find-xargs-e-grep","status":"publish","type":"post","link":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/2015\/04\/07\/busca-dentro-de-arquivos-usando-o-find-xargs-e-grep\/","title":{"rendered":"Busca dentro de arquivos \u2013 Usando o Find + xargs  e  grep"},"content":{"rendered":"<p>Fazer uma procura de uma palavra dentro de um arquivo.<\/p>\n<blockquote>\n<table style=\"height: 22px;\" border=\"0\" width=\"310\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<div>1<\/div>\n<\/td>\n<td>\n<div>\n<div><code>$&gt; <\/code><code>find\u00a0<\/code><code>-name *.html | <\/code><code>xargs\u00a0<\/code><code>grep\u00a0<\/code><code>-r <\/code><code>\"title\"<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<p>O que ele faz \u00e9 procurar em todos os arquivos a palavra title, acrescentando \u00a0\u201d*\u201d sem aspas no final teremos o caminho e no arquivo que contem a palavra pesquisada.<\/p>\n<blockquote>\n<table border=\"0\" cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>\n<div>1<\/div>\n<\/td>\n<td>\n<div>\n<div><code>$&gt; <\/code><code>find<\/code> <code>-name *.html | <\/code><code>xargs<\/code> <code>grep<\/code> <code>-r title *<\/code><\/div>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/blockquote>\n<p>Teremos a sa\u00edda parecida com isso:<\/p>\n<blockquote>\n<div><code>$&gt; <\/code><code>find<\/code><code>-name *.html | <\/code><code>xargs <\/code><code>grep<\/code><code>-r title *<\/code><\/div>\n<div><code>.<\/code><code>\/index<\/code><code>.html: <\/code><code>'&lt;a rel=\"prettyPhoto[2]\" href=\"{{image}}\" title=\"{{title}}\"&gt;'<\/code><code>+<\/code><\/div>\n<div><code>.<\/code><code>\/index<\/code><code>.html: <\/code><code>'&lt;img src=\"{{image_s}}\" alt=\"{{title}}\"&gt;'<\/code><code>+<\/code><\/div>\n<div><code>&gt;<\/code><\/div>\n<div><code>&lt;<\/code><code>\/a<\/code><code>&gt;<\/code><\/div>\n<\/blockquote>\n<p>O find, como o nome diz, \u00e9 utilizado para se encontrar arquivos no sistema. J\u00e1 o xargs facilita a repeti\u00e7\u00e3o de um certo comando para cada entrada fornecida para ele.<\/p>\n<p>&nbsp;<\/p>\n<p>J\u00e1 usei este comando junto com o tar para cria\u00e7\u00e3o de backups e funcionava muito bem.<\/p>\n<p>Sempre tive a necessidade de encontrar arquivos em meu sistema, por\u00e9m, a \u00fanica associa\u00e7\u00e3o que tinha desse arquivo era um par\u00e2metro, ou trecho, que estava dentro do arquivo e com o comando <em>find<\/em>, apenas encontrava se soubesse o nome do arquivo.<\/p>\n<p>Bom, esse problema foi resolvido e gostaria de compartilhar com voc\u00eas:<\/p>\n<p><strong>$ find \u00a0.\/* -type f -exec \u00a0grep \u00a0-l STRING \u00a0{} \\;<\/strong><\/p>\n<p>Altere &#8220;STRING&#8221; com o trecho que gostaria de procurar.<\/p>\n<p>&nbsp;<\/p>\n<p>permiss\u00f5es apenas em arquivos.<\/p>\n<p>[\/home\/user\/public_html\/wp-content\/themes\/u-design\/styles]# find . -type f -exec chmod 444 {} \\;<\/p>\n<p><strong> find . -type f -exec chmod 444 {} \\;<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>http:\/\/www.vivaolinux.com.br\/dica\/Find-Pesquisar-trechos-(strings)-dentro-de-arquivos<\/p>\n<p>http:\/\/www.jostdayan.com.br\/2011\/07\/busca-dentro-de-arquivos-usando-o-find\/<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Fazer uma procura de uma palavra dentro de um arquivo. 1 $&gt; find\u00a0-name *.html | xargs\u00a0grep\u00a0-r &#8220;title&#8221; O que ele faz \u00e9 procurar em todos os arquivos a palavra title, acrescentando \u00a0\u201d*\u201d sem aspas no final teremos o caminho e no arquivo que contem a&#8230;<\/p>\n","protected":false},"author":2,"featured_media":3556,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_angie_page":false,"page_builder":"","footnotes":""},"categories":[18,20,7],"tags":[],"class_list":["post-3457","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-comandos-linux","category-linux","category-wordpress"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/posts\/3457","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=3457"}],"version-history":[{"count":0,"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/posts\/3457\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/media\/3556"}],"wp:attachment":[{"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=3457"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=3457"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.deuzebranaweb.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=3457"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}