Provided by: manpages-es-extra_0.8a-16_all bug

NOMBRE

       find - busca ficheros en un árbol de directorios

SINOPSIS

       find [camino...] [expresión]

DESCRIPCIÓN

       Esta  página  del  Manual  documenta  la  versión de GNU de find.  find
       recorre el árbol de directorio cuya  raíz  reside  en  cada  nombre  de
       fichero   dado,   evaluando   de   izquierda  a  derecha  la  expresión
       especificada, según las  reglas  de  precedencia  (vea  la  sección  de
       OPERADORES),  hasta  que  se conoce el resultado (la parte izquierda es
       falsa para operaciones and, verdadera para or), en cuyo punto  find  se
       mueve al siguiente nombre de fichero.

       El  primer argumento que comience con ‘-’, ‘(’, ‘)’, ‘,’, o ‘!’ se toma
       como el principio de la expresión; cualesquier argumentos antes  de  él
       son  caminos  a  recorrer,  y  cualesquier argumentos tras él forman el
       resto de la expresión. Si no se da ningún camino, se toma el directorio
       de  trabajo.  Si  no  se  da  ninguna  expresión,  se  sobreentiende la
       expresión ‘-print’.

       find acaba con código de estado 0 si todos  los  ficheros  se  procesan
       satisfactoriamente, mayor que 0 si ocurre un error.

EXPRESIONES

       La   expresión  está  hecha  de  opciones  (que  afectan  a  todas  las
       operaciones en vez de al procesamiento  de  un  fichero  específico,  y
       siempre  devuelven  verdad),  comparaciones  (que  devuelven  un  valor
       verdadero o falso),  y  acciones  (que  tienen  efectos  colaterales  y
       devuelven  un valor verdadero o falso), todos separados por operadores.
       Donde se omita el operador, se sobreentiende -and. Si la  expresión  no
       contiene  ninguna  acción, aparte de -prune, se ejecuta -print en todos
       los ficheros para los que la expresión dé verdadera.

   OPCIONES
       Todas las opciones siempre devuelven verdadero. Siempre tienen  efecto,
       en  lugar  de ser procesadas solamente cuando se alcance su sitio en la
       expresión. Por lo tanto, por claridad, lo mejor es ponerlas siempre  al
       principio de la expresión.

       -daystart
              Mide  los  tiempos  (para -amin, -atime, -cmin, -ctime, -mmin, y
              -mtime) desde el principio del día de hoy en lugar de desde hace
              24 horas.

       -depth Procesa   cada   contenido   del  directorio  antes  del  propio
              directorio.

       -follow
              Desreferencia enlaces simbólicos. Implica -noleaf.

       -help, --help
              Muestra un sumario del modo de empleo de find y acaba.

       -maxdepth niveles
              Desciende como mucho niveles (un entero no negativo) niveles  de
              directorios por debajo de los argumentos de la línea de órdenes.
              ‘-maxdepth 0’ significa que sólo se aplicarán las  comparaciones
              y acciones a los argumentos de la línea de órdenes.

       -mindepth niveles
              No aplica comparaciones ni acciones a niveles menores de niveles
              (un entero no negativo). ‘-mindepth 1’ significa procesar  todos
              los ficheros excepto los argumentos de la línea de órdenes.

       -mount No  descender  a  directorios  en otros sistemas de ficheros. Un
              nombre alternativo para -xdev, por  compatibilidad  con  algunas
              otras versiones de find.

       -noleaf
              No   optimiza  suponiendo  que  los  directorios  contienen  dos
              subdirectorios menos que lo que dice su número de enlaces duros.
              Esta opción es necesaria cuando se recorren sistemas de ficheros
              que  no  siguen  el  convenio  de  Unix  sobre  los  enlaces  de
              directorios, como sistemas de ficheros ISO-9660 (de un CD-ROM) o
              FAT (de MS-DOS o Windows), o puntos de montaje de volúmenes  AFS
              (Andrew  File System). Cada directorio de un sistema de ficheros
              normal de Unix (UFS,  ext2fs,  etc.)  tiene  por  lo  menos  dos
              enlaces  duros:  su nombre y su entrada ‘.’ (punto). Además, sus
              subdirectorios (si los hay) tienen cada  uno  una  entrada  ‘..’
              enlazada  a  este  directorio.  Cuando  find  está examinando un
              directorio, después de que ha hecho stat() en dos subdirectorios
              menos  de  lo que dice el número de enlaces del directorio, sabe
              que el resto de las entradas del directorio  son  no-directorios
              (ficheros ‘hoja’ [‘leaf’ en inglés] en el árbol del directorio).
              Si sólo hay  que  examinar  los  nombres  de  ficheros,  no  hay
              necesidad de llamar a stat() sobre ellos, lo cual proporciona un
              incremento significativo en la velocidad del recorrido.

       -version, --version
              Muestra el número de versión de find y acaba.

       -xdev  No desciende a directorios en otros sistemas  de  ficheros.  Vea
              -mount más arriba.

   COMPARACIONES
       Los argumentos numéricos pueden especificarse como

       +n     para mayor que n,

       -n     para menor que n,

       n      para exactamente n.

       -amin n
              Se ha accedido al fichero por última vez hace n minutos.

       -anewer fichero
              Se  ha  accedido al fichero por última vez más recientemente que
              cuando  fichero  fue  modificado.   -anewer  está  afectado  por
              -follow  solamente si -follow va antes de -anewer en la línea de
              órdenes.

       -atime n
              Se ha accedido al fichero por última vez hace n×24 horas.

       -cmin n
              El status del fichero se cambió por última vez hace n minutos.

       -cnewer fichero
              El status del fichero se cambió por última vez más recientemente
              que  cuando  se  modificó  fichero.   -cnewer  está afectado por
              -follow solamente si -follow va antes de -cnewer en la línea  de
              órdenes.

       -ctime n
              EL  status del fichero se cambió por última vez hace n×24 horas.

       -empty El fichero está vacío y es o un fichero regular o un directorio.

       -false Siempre da falso.

       -fstype tipo
              El  fichero  está  en  un  sistema de ficheros de tipo tipo. Los
              tipos válidos de sistemas de ficheros varían según la versión de
              Unix;  una lista incompleta de tipos de sistemas de ficheros que
              se aceptan en algunas versiones de Unix es: ufs, 4.2, 4.3,  nfs,
              tmp, mfs, S51K, S52K.  Se puede usar -printf con la directiva %F
              para ver los tipos de sus sistemas de ficheros. (En  Linux,  cat
              /proc/filesystems  dará  una  lista  de los tipos de sistemas de
              ficheros reconocidos.)

       -gid n El GID numérico del fichero es n.

       -group grupo
              El  fichero  pertenece  al  grupo  grupo  (se  permite  un   GID
              numérico).

       -ilname patrn
              Como  -lname, pero la concordancia no hace caso de mayúsculas ni
              minúsculas.

       -iname patrn
              Como -name, pero la concordancia no hace caso de  mayúsculas  ni
              minúsculas.  Por  ejemplo, los patrones ‘fo*’ y ‘F??’ concuerdan
              con los nombres de ficheros ‘Foo’, ‘FOO’, ‘foo’, ‘fOo’, etc.

       -inum n
              El fichero tiene de número-i n.

       -ipath patrn
              Como -path, pero la concordancia no hace caso de  mayúsculas  ni
              minúsculas.

       -iregex patrn
              Como  -regex, pero la concordancia no hace caso de mayúsculas ni
              minúsculas.

       -links n
              El fichero tiene n enlaces.

       -lname patrn
              El fichero es un enlace simbólico  cuyos  contenidos  concuerdan
              con  el  patrón  del  shell patrn. Los metacaracteres no tratan
              especialmente a ‘/’ ni a ‘.’.

       -mmin n
              Los datos del fichero fueron modificados por última vez  hace  n
              minutos.

       -mtime n
              Los  datos  del  fichero  fueron modificados por última vez hace
              n×24 horas.

       -name patrn
              La base del nombre del fichero (el camino sin  los  directorios)
              concuerda  con  el  patrón  del shell patrn. Los metacaracteres
              (‘*’, ‘?’ y ‘[]’) no concuerdan con  un  ‘.’  al  principio  del
              nombre  base.  Para omitir un directorio y los ficheros bajo él,
              emplee -prune; vea un ejemplo en la descripción de -path.

       -newer fichero
              El fichero fue modificado más recientemente que fichero.  -newer
              es  afectado por -follow solamente si -follow va antes de -newer
              en la línea de órdenes.

       -nouser
              Ningún usuario se corresponde con el UID numérico del fichero.

       -nogroup
              Ningún grupo se corresponde con el GID numérico del fichero.

       -path patrn
              El nombre del fichero concuerda con el patrón del shell  patrn.
              Los  metacaracteres  no  tratan de forma especial a ‘/’ o a ‘.’;
              así, por ejemplo,
                        find . -path ’./sr*sc’
              mostrará una entrada para un directorio llamado ’./src/misc’ (si
              es  que  existe).  Para  omitir  un  árbol entero de directorio,
              emplee -prune en vez de comprobar cada fichero en el árbol.  Por
              ejemplo,  para  pasar  el  directorio  ‘src/emacs’  y  todos los
              ficheros y directorios bajo él, y mostrar  los  nombres  de  los
              otros ficheros encontrados, haga algo como esto:
                        find . -path ’./src/emacs’ -prune -o -print

       -perm modo
              Los  bits  de  permiso del fichero son exactamente modo (octal o
              simbólico). Los modos simbólicos  utilizarán  0  como  punto  de
              partida.

       -perm -modo
              Todos los bits de permiso modo están activos para el fichero.

       -perm +modo
              Cualquiera  de  los  bits de permiso de modo está activo para el
              fichero.

       -regex patrn
              El nombre del fichero concuerda con la expresión regular patrn.
              Esta  concordancia  es  en el camino entero, no es una búsqueda.
              Por ejemplo, para  un  fichero  llamado  ‘./fubar3’,  Ud.  puede
              emplear  la  expresión  regular  ‘.*bar.’  or  ‘.*b.*3’,  mas no
              ‘b.*r3’.

       -size n[bckw]
              El fichero emplea n  unidades  de  espacio.   Las  unidades  son
              bloques  de  512 bytes si no se dice otra cosa o si la letra ‘b’
              sigue a n, bloques de bytes si se pone la letra  ‘c’,  kilobytes
              con  la  ‘k’,  o  palabras  de  2 bytes con la ‘w’. El tamaño no
              cuenta bloques indirectos, pero sí cuenta  bloques  en  ficheros
              esparcidos que no están realmente asignados.

       -true  Siempre da verdadero.

       -type c
              El fichero es de tipo c:

              b      especial de bloques (tamponado)

              c      especial de caracteres (sin tamponar)

              d      directorio

              p      tubería con nombre (FIFO)

              f      fichero regular

              l      enlace simbólico

              s      zócalo (socket)

       -uid n El UID numérico del propietario del fichero es n.

       -used n
              Se  accedió  por  última vez al fichero n días después de que se
              cambió por última vez su estado.

       -user usuario
              El propietario del fichero es el usuario usuario (se permite  un
              UID numérico).

       -xtype c
              Lo  mismo  que  -type  a  menos  que  el  fichero  sea un enlace
              simbólico. Para enlaces simbólicos: si no se  ha  dado  -follow,
              verdad si el fichero es un enlace a un fichero de tipo c; si no,
              verdad si c es ‘l’. En otras palabras, para enlaces  simbólicos,
              -xtype comprueba el tipo del fichero que -type no comprueba.

   ACCIONES
       -exec orden ;
              Ejecuta  orden;  verdad  si  se  devuelve el status 0. Todos los
              argumentos que siguen a find se toman como de la orden hasta que
              se encuentre uno consistente en ‘;’. La cadena ‘{}’ se reemplaza
              por el nombre del fichero que se está procesando;  en  cualquier
              sitio de los argumentos de la orden, no sólo en argumentos donde
              esté sola, como en  algunas  otras  versiones  de  find.   Ambas
              construcciones  pueden  necesitar  ‘escaparse’  (con  una ‘\’) o
              entrecomillarse, para protegerlas de la expansión que efectuaría
              el shell. La orden se ejecuta en el directorio de comienzo.

       -fls fichero
              Verdad; como -ls pero escribe en fichero como -fprint.

       -fprint fichero
              Verdad;  escribe  el  nombre completo del fichero en fichero. Si
              fichero no existe cuando se ejecuta find, se crea; si existe, se
              trunca.    Los    nombres    de   ficheros   ‘‘/dev/stdout’’   y
              ‘‘/dev/stderr’’ se manejan de manera especial; se refieren a  la
              salida    estándar    y   la   salida   estándar   de   errores,
              respectivamente.

       -fprint0 fichero
              Verdad; como -print0 pero escribe en fichero como -fprint.

       -fprintf fichero formato
              Verdad; como -printf pero escribe en fichero como -fprint.

       -ok orden ;
              Como -exec pero pregunta  primero  al  usuario  (en  la  entrada
              estándar);  si  la respuesta no comienza con ‘y’ o ‘Y’ (o quizás
              el equivalente local, en español ‘s’ o ‘S’), no  se  ejecuta  la
              orden, y devuelve falso.

       -print Verdad;  imprime  el  nombre  completo  del fichero en la salida
              estándar, seguido por un salto de línea.

       -print0
              Verdad; imprime el nombre completo  del  fichero  en  la  salida
              estándar, seguido por un carácter nulo. Esto permite que nombres
              de ficheros que contengan saltos  de  línea  sean  correctamente
              interpretados por programas que procesen la salida de find.

       -printf formato
              Verdad;  imprime  formato  en  la salida estándar, interpretando
              secuencias de escape ‘\’ y directivas ‘%’. Las anchuras de campo
              y  precisiones  pueden  especificarse  como  en  la función de C
              ‘printf’. De forma contraria a lo que hace  -print,  -printf  no
              añade un salto de línea al final de la cadena. Las secuencias de
              escape y directivas son:

              \a     La campana de alarma.

              \b     Espacio atrás.

              \c     Para la impresión de este formato inmediatamente y vuelca
                     el búfer de salida.

              \f     Salto de página.

              \n     Salto de línea.

              \r     Retorno de carro.

              \t     Tabulador horizontal.

              \v     Tabulador vertical.

              \\     Una barra inclinada inversa literal (‘\’).

              Un  carácter  ‘\’  seguido  por  otro cualquiera distinto de los
              anteriores se trata como un carácter ordinario, por  lo  que  se
              imprimirán ambos.

              %%     Un signo de porcentaje literal ‘%’.

              %a     El  tiempo  de  último  acceso  al  fichero en el formato
                     devuelto por la función de C ‘ctime()’.

              %Ak    El tiempo de último  acceso  al  fichero  en  el  formato
                     especificado  por  k,  que  es  o  bien  ‘@’  o  bien una
                     directiva válida para la función de C  ‘strftime()’.  Los
                     valores posibles para k se listan abajo; algunos de ellos
                     pueden no estar disponibles en todos los sistemas, debido
                     a  diferencias en la función ‘strftime()’ entre sistemas.

                      @      segundos desde el 1 de Enero de 1970 a las  00:00
                             h GMT.

                     Campos de tiempo:

                      H      hora (00..23)

                      I      hora (01..12)

                      k      hora ( 0..23)

                      l      hora ( 1..12)

                      M      minuto (00..59)

                      p      AM o PM, en su representación local

                      r      hora, formato de 12 horas (hh:mm:ss [AP]M)

                      S      segundo (00..61)

                      T      tiempo, formato de 24 horas (hh:mm:ss)

                      X      representación local de la hora (H:M:S)

                      Z      zona  horaria  (e.g.,  CET),  o  nada  si el huso
                             horario no es determinable

                     Campos de fecha:

                      a      nombre local  abreviado  del  día  de  la  semana
                             (Dom..Sáb)

                      A      nombre  local  completo  del  día  de  la semana,
                             longitud variable (Domingo..Sábado)

                      b      nombre local abreviado del mes (Ene..Dic)

                      B      nombre local completo del mes, longitud  variable
                             (Enero..Diciembre)

                      c      fecha  y  hora en representación local (Sáb 4 Nov
                             12:02:33 CET 1989)

                      d      día del mes (01..31)

                      D      fecha (mm/dd/aa)

                      h      lo mismo que b

                      j      día del año (juliano) (001..366)

                      m      mes numérico (01..12)

                      U      número de la semana del año con el  Domingo  como
                             primer día de la semana (00..53)

                      w      día de la semana, numérico (0..6)

                      W      número de la semana del año como el Lunes como el
                             primer día de la semana (00..53)

                      x      representación local de la fecha (dd/mm/aa)

                      y      los últimos dos dígitos del año (00..99)

                      Y      año (1970...)

              %b     El  tamaño  del  fichero  en   bloques   de   512   bytes
                     (redondeado)

              %c     El  tiempo del último cambio del estado del fichero en el
                     formato devuelto por la función de C ‘ctime()’.

              %Ck    El tiempo del último cambio del estado del fichero en  el
                     formato  especificado por k, que es el mismo que para %A.

              %d     La profundidad en el árbol del  directorio;  0  significa
                     que el fichero es un argumento de la línea de órdenes.

              %f     El nombre del fichero sin los directorios (sólo el último
                     elemento del camino).

              %F     Tipo del sistema de ficheros donde está el fichero;  este
                     valor puede emplearse para -fstype.

              %g     El  nombre de grupo al que pertenece el fichero, o el GID
                     numérico si el grupo no tiene nombre.

              %G     El GID numérico del grupo al que pertenece el fichero.

              %h     Los  directorios  del  camino  del  fichero  (todos   los
                     componentes del camino menos el último elemento).

              %H     Argumento  de  la  línea  de  órdenes  bajo  el que se ha
                     encontrado el fichero.

              %i     El número-i del fichero (en base 10).

              %k     El tamaño del fichero en bloques de un kB (redondeado).

              %l     El objeto de un enlace simbólico (la cadena vacía  si  el
                     fichero no es un enlace simbólico).

              %m     Los bits de permiso del fichero (en octal).

              %n     El número de enlaces duros del fichero.

              %p     El nombre del fichero.

              %P     El  nombre  del fichero con el nombre del argumento de la
                     línea de órdenes bajo el que se ha encontrado, quitado.

              %s     El tamaño del fichero en bytes.

              %t     El tiempo  de  última  modificación  del  fichero  en  el
                     formato devuelto por la función de C ‘ctime()’.

              %Tk    El  tiempo  de  última  modificación  del  fichero  en el
                     formato especificado por k, que es el mismo que para  %A.

              %u     El  nombre  del usuario propietario del fichero, o el UID
                     si el usuario no tiene nombre.

              %U     El UID numérico del propietario del fichero.

              Un carácter ‘%’ seguido  por  cualquier  otro  distinto  de  los
              recién mencionados no es tenido en cuenta (pero el otro carácter
              se imprime).

       -prune Si -depth no  se  da,  devuelve  verdad;  no  desciende  por  el
              directorio en curso.
              Si -depth se da, devuelve falso; no tiene otro efecto.

       -ls    Verdad;  lista  el fichero actual en el formato de ‘ls -dils’ en
              la salida estándar. Los números de bloques son en bloques  de  1
              kB,  a  menos  que  la variable de ambiente POSIXLY_CORRECT esté
              definida, en cuyo caso los bloques son de 512 B.

   OPERADORES
       Listados en orden de precedencia decreciente:

       ( expr )
              Fuerza la precedencia.

       ! expr Verdad si expr es falsa.

       -not expr
              Lo mismo que ! expr.

       expr1 expr2
              Y (implícito); expr2 no se evalúa si expr1 es falsa.

       expr1 -a expr2
              Lo mismo que expr1 expr2.

       expr1 -and expr2
              Lo mismo que expr1 expr2.

       expr1 -o expr2
              O; expr2 no se evalúa si expr1 es verdad.

       expr1 -or expr2
              Lo mismo que expr1 -o expr2.

       expr1 , expr2
              Lista; expr1 y expr2 son, ambos, evaluados siempre.  El valor de
              expr1 se descarta; el valor de la lista es el de expr2.

VÉASE TAMBIÉN

       locate(1L),   locatedb(5L),   updatedb(1L),   xargs(1L)  Finding  Files
       (‘‘Buscando Ficheros’’; en interactivo con Info, o impreso en papel).

                                                                      FIND(1L)