<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>software libre e internet</title>
  <updated>2008-03-11T10:07:45+01:00</updated>
  <link href="http://kaux.informaticos.com/posts" rel="alternate"/>
  <author>
    <name>Carlos</name>
    <uri>http://blogs.informaticos.com/usuarios/521202</uri>
  </author>
  <entry>
    <title>Comandos &#xFA;tiles para borrados largos y/o recursivos con patrones</title>
    <id>http://kaux.informaticos.com/2008/3/11/comandos-utiles-borrados-largos-y-o-recursivos-con-patrones</id>
    <updated>2008-04-13T18:38:16+02:00</updated>
    <published>2008-03-11T10:07:45+01:00</published>
    <link href="http://kaux.informaticos.com/2008/3/11/comandos-utiles-borrados-largos-y-o-recursivos-con-patrones" rel="alternate"/>
    <author>
      <name>Carlos</name>
      <uri>http://blogs.informaticos.com/usuarios/521202</uri>
    </author>
    <content type="html">&lt;p&gt;Muchas veces queremos borrar una larga lista de ficheros, creados por alg&#xFA;n proceso en ejecuci&#xF3;n, que contienen un patr&#xF3;n determinado en su nombre (sean ficheros de logs, sesiones, etc.). Puede darse el caso que dicha lista sea muy extensa y que no se nos permita hacer un borrado simple recursivo. Normalmente cuando pasa esto nos aparece este problema:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;bash: /bin/rm: Argument list too long&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Entonces, podemos utilizar un comando del estilo siguiente para hacer el borrado de estos ficheros tan similares (en este caso supongo que los nombres de los archivos empiezan por "log_"):&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt; for i in ls /tmp/log_*; do rm -v $i -f; done&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Otro caso com&#xFA;n es cuando necesitamos eliminar unos ficheros y/o directorios que se repiten a lo largo de un profundo &#xE1;rbol de directorios. Un ejemplo muy com&#xFA;n de este caso podr&#xED;an ser los directorios ".svn" que crean los repositorios del Subversion a lo largo de sus directorios internos. Para poder eliminarlos se puede usar un comando similar a este:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;rm -rf `find . -type d -name .svn`&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;El c&#xFA;al elimina recursivamente dichos directorios busc&#xE1;ndolos por su nombre. &lt;/p&gt;
&lt;p&gt;Espero que os sean de utilidad ;).
&lt;/p&gt;
</content>
  </entry>
</feed>
