InglésFrancésEspañol

Ad


icono de página de OnWorks

buscar: en línea en la nube

Ejecute buscar en el proveedor de alojamiento gratuito de OnWorks a través de Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando find que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


buscar: buscar archivos en una jerarquía de directorios

SINOPSIS


encontrar [-H] [-L] [-P] [-D debugopts] [-Olevel] [punto de inicio ...] [expresión]

DESCRIPCIÓN


Esta página de manual documenta la versión GNU de encontrar. ÑU encontrar busca en el árbol del directorio
arraigado en cada punto de partida dado evaluando la expresión dada de izquierda a derecha,
de acuerdo con las reglas de precedencia (ver sección OPERADORES), hasta que se conozca el resultado
(el lado izquierdo es falso para y operaciones, cierto para or), en cuyo punto encontrar se mueve
en el siguiente nombre de archivo. Si no se especifica ningún punto de partida, "." se supone.

Si está utilizando encontrar en un entorno donde la seguridad es importante (por ejemplo, si
lo está utilizando para buscar directorios en los que otros usuarios pueden escribir), debe leer el
El capítulo "Consideraciones de seguridad" de la documentación de findutils, que se llama Encontrar
archivos y viene con findutils. Ese documento también incluye muchos más detalles y
discusión que esta página de manual, por lo que puede encontrarla como una fuente de información más útil.

CAMPUS


El -H, -L y -P Las opciones controlan el tratamiento de los enlaces simbólicos. Argumentos de la línea de comandos
siguientes se toman como nombres de archivos o directorios que se van a examinar, hasta el
primer argumento que comienza con `- ', o el argumento` (' o `! '. Ese argumento y cualquier
Los siguientes argumentos se toman como la expresión que describe lo que se busca.
Si no se proporcionan rutas, se utiliza el directorio actual. Si no se da ninguna expresión, la
expresión -impresión se usa (pero probablemente debería considerar usar -imprimir0 en lugar,
de todos modos)

Esta página de manual habla de "opciones" dentro de la lista de expresiones. Estas opciones controlan
el comportamiento de encontrar pero se especifican inmediatamente después del último nombre de ruta. El cinco
opciones 'reales' -H, -L, -P, -D y -O debe aparecer antes del primer nombre de ruta, si es que aparece. A
doble guión -- también se puede usar para señalar que los argumentos restantes no son opciones
(aunque asegurarse de que todos los puntos de inicio comiencen con `./ 'o` /' es generalmente más seguro si
utiliza comodines en la lista de puntos de inicio).

-P Nunca sigas enlaces simbólicos. Este es el comportamiento estándar. Cuándo encontrar examina o
imprime información en un archivo, y el archivo es un enlace simbólico, la información utilizada
se tomará de las propiedades del propio enlace simbólico.

-L Siga enlaces simbólicos. Cuándo encontrar examina o imprime información sobre archivos, el
La información utilizada se tomará de las propiedades del archivo al que se dirige el enlace.
puntos, no del enlace en sí (a menos que sea un enlace simbólico roto o encontrar is
incapaz de examinar el archivo al que apunta el enlace). El uso de esta opción implica
-nohoja. Si luego usa el -P opción, -nohoja seguirá estando en vigor. Si -L
está en efecto y encontrar descubre un enlace simbólico a un subdirectorio durante su
búsqueda, se buscará en el subdirectorio al que apunta el enlace simbólico.

Cuando el -L la opción está en efecto, la Tipo predicado siempre coincidirá con el
tipo de archivo al que apunta un enlace simbólico en lugar del enlace en sí (a menos que
el vínculo simbólico está roto). Acciones que pueden hacer que los enlaces simbólicos se conviertan en
roto mientras encontrar está ejecutando (por ejemplo -borrar) puede dar lugar a confusión
conducta. Utilizando -L causa el -nombre y -ilnombre predicados siempre para volver
falso.

-H No siga enlaces simbólicos, excepto mientras procesa los argumentos de la línea de comando.
Cuándo encontrar examina o imprime información sobre archivos, la información utilizada debe ser
tomado de las propiedades del propio vínculo simbólico. La única excepción a esto
El comportamiento es cuando un archivo especificado en la línea de comando es un enlace simbólico, y el
el enlace se puede resolver. Para esa situación, la información utilizada se toma de
a lo que apunte el enlace (es decir, se sigue el enlace). La información sobre
el enlace en sí se utiliza como respaldo si el archivo al que apunta el enlace simbólico
no puede ser examinado. Si -H está en vigor y una de las rutas especificadas en el
línea de comando es un enlace simbólico a un directorio, el contenido de ese directorio se
ser examinado (aunque, por supuesto, -maxdepth 0 evitaría esto).

Si más de uno de -H, -L y -P se especifica, cada uno anula a los demás; el último
que aparece en la línea de comando entra en vigor. Dado que es el predeterminado, el -P la opción debería
se considerará que está en vigor a menos que -H or -L está especificado.

GNU encontrar archivos de estadísticas con frecuencia durante el procesamiento de la línea de comando, antes
cualquier búsqueda ha comenzado. Estas opciones también afectan la forma en que se procesan esos argumentos.
Específicamente, hay una serie de pruebas que comparan los archivos enumerados en la línea de comando.
contra un archivo que estamos considerando actualmente. En cada caso, el archivo especificado en el
Se habrá examinado la línea de comando y se habrán guardado algunas de sus propiedades. Si
el archivo nombrado es de hecho un enlace simbólico, y el -P la opción está en efecto (o si ninguna
-H ni -L se especificaron), la información utilizada para la comparación se tomará del
propiedades del enlace simbólico. De lo contrario, se tomará de las propiedades del
archivo al que apunta el enlace. Si encontrar no puede seguir el enlace (por ejemplo, porque tiene
privilegios insuficientes o el enlace apunta a un archivo inexistente) las propiedades del
se utilizará el enlace en sí.

Cuando el -H or -L opciones en in efecto, cualquier simbólico enlaces enlistan como el argumento de
-más nuevo será desreferenciado, y la marca de tiempo se tomará del archivo al que
puntos de enlace simbólicos. La misma consideración se aplica a -nuevoXY, -uno más nuevo y -cnewer.

El -seguir La opción tiene un efecto similar a -L, aunque surte efecto en el punto donde
aparece (es decir, si -L no se usa pero -seguir es decir, cualquier enlace simbólico que aparezca después
-seguir en la línea de comando se desreferencia, y los anteriores no).

-D opciones de depuración
Imprimir información de diagnóstico; esto puede ser útil para diagnosticar problemas con el motivo
encontrar no está haciendo lo que quiere. La lista de opciones de depuración debe ser coma
apartado. La compatibilidad de las opciones de depuración no está garantizada entre versiones.
de findutils. Para obtener una lista completa de opciones de depuración válidas, consulte el resultado de encontrar
-D ayuda. Las opciones de depuración válidas incluyen

ayuda Explicar las opciones de depuración

árbol Muestra el árbol de expresión en su forma original y optimizada.

stat Imprime mensajes a medida que los archivos se examinan con el stat y lstat llamadas al sistema.
El encontrar El programa intenta minimizar tales llamadas.

opt Imprime información de diagnóstico relacionada con la optimización de la expresión
árbol; vea la opción -O.

rate Imprime un resumen que indica la frecuencia con la que cada predicado tuvo éxito o falló.

-O nivel
Habilita la optimización de consultas. El encontrar El programa reordena las pruebas para acelerar la ejecución.
conservando el efecto general; es decir, los predicados con efectos secundarios no son
reordenados entre sí. Las optimizaciones realizadas en cada optimización
nivel son los siguientes.

0 Equivalente al nivel de optimización 1.

1 Este es el nivel de optimización predeterminado y corresponde al tradicional
conducta. Las expresiones se reordenan para que las pruebas basadas solo en los nombres
de archivos (por ejemplo -nombre y -expresión regular) se realizan primero.

2 Cualquiera Tipo or -xtipo Las pruebas se realizan después de cualquier prueba basada únicamente en el
nombres de archivos, pero antes de cualquier prueba que requiera información del
inodo. En muchas versiones modernas de Unix, los tipos de archivo son devueltos por
readdir () por lo que estos predicados son más rápidos de evaluar que los predicados
que necesitan establecer el archivo primero. Si usa el -fstipo FOO predicado y
especificar un tipo de sistema de archivos FOO que no se conoce (es decir, presente en
`/ etc / mtab') En el momento encontrar comienza, ese predicado es equivalente a
-falso.

3 En este nivel de optimización, el optimizador de consultas basado en costos completo está habilitado.
El orden de las pruebas se modifica para que se realicen pruebas económicas (es decir, rápidas)
los primeros y los más costosos se realizan después, si es necesario. Dentro
cada banda de costo, los predicados se evalúan antes o después de acuerdo con
si es probable que tengan éxito o no. Para -o, predicados que son
las probabilidades de éxito se evalúan antes, y para -a, predicados que son
las probabilidades de fallar se evalúan antes.

El optimizador basado en costos tiene una idea fija de la probabilidad de que una prueba dada
triunfar. En algunos casos, la probabilidad tiene en cuenta la naturaleza específica de la
prueba (por ejemplo, Tipo f se supone que tiene más probabilidades de éxito que Tipo c).
Actualmente se está evaluando el optimizador basado en costos. Si en realidad no
mejorar el rendimiento de encontrar, será eliminado nuevamente. En cambio,
Las optimizaciones que demuestren ser confiables, robustas y efectivas pueden habilitarse en
niveles de optimización más bajos con el tiempo. Sin embargo, el comportamiento predeterminado (es decir
nivel de optimización 1) no se cambiará en la serie de versiones 4.3.x. El
findutils test suite ejecuta todas las pruebas en encontrar en cada nivel de optimización y
asegura que el resultado sea el mismo.

EXPRESIÓN


La parte de la línea de comando después de la lista de puntos de partida es la expresión. Es
una especie de especificación de consulta que describe cómo hacemos coincidir los archivos y qué hacemos con los archivos
que fueron emparejados. Una expresión se compone de una secuencia de cosas:

Pruebas Las pruebas devuelven un valor verdadero o falso, generalmente sobre la base de alguna propiedad de un archivo
estamos considerando. El -vacío prueba, por ejemplo, es verdadera solo cuando el archivo actual
esta vacio.

Acciones
Las acciones tienen efectos secundarios (como imprimir algo en la salida estándar) y
devuelven verdadero o falso, generalmente en función de si tienen éxito o no.
El -impresión acción, por ejemplo, imprime el nombre del archivo actual en el estándar
salida.

Opciones globales
Las opciones globales afectan el funcionamiento de las pruebas y acciones especificadas en cualquier parte de
la línea de comando. Las opciones globales siempre vuelven verdaderas. El -profundidad opción para
ejemplo hace encontrar atraviesa el sistema de archivos en orden de profundidad.

Opciones posicionales
Las opciones posicionales afectan solo a las pruebas o acciones que las siguen. Posicional
las opciones siempre vuelven verdaderas. El -tiporegex la opción, por ejemplo, es posicional,
especificar el dialecto de la expresión regular para las expresiones regulat que ocurren más tarde
en la línea de comando.

telecomunicaciones
Los operadores unen los otros elementos dentro de la expresión. Incluyen para
ejemplo -o (que significa OR lógico) y -a (que significa Y lógico). Donde está un operador
desaparecido, -a se supone.

Si toda la expresión no contiene más acciones que -ciruela pasa or -impresión, -impresión is
realizado en todos los archivos para los que toda la expresión es verdadera.

El -borrar La acción también actúa como una opción (ya que implica -profundidad).

POSICIONAL CAMPUS
Las opciones posicionales siempre devuelven verdadero. Afectan solo a las pruebas que ocurren más tarde en el
línea de comando.

-inicio del día
Medir tiempos (para -amina, -un momento, -cmín, -hora, -mmíny -Mtime) desde el
a partir de hoy en lugar de hace 24 horas. Esta opción solo afecta a las pruebas
que aparecen más adelante en la línea de comando.

-seguir
Obsoleto; utilizar el -L opción en su lugar. Desreferenciar enlaces simbólicos. Implica
-nohoja. -seguir La opción afecta solo a las pruebas que aparecen después de ella en el
línea de comando. A menos que el -H or -L se ha especificado la opción, la posición del
-seguir La opción cambia el comportamiento del -más nuevo predicado; cualquier archivo listado como
el argumento de -más nuevo serán desreferenciados si son enlaces simbólicos. Lo mismo
la consideración se aplica a -nuevoXY, -uno más nuevo y -cnewer. Del mismo modo, el Tipo
predicado siempre coincidirá con el tipo de archivo que un enlace simbólico
apunta en lugar del enlace en sí. Utilizando -seguir causa el -nombre y -ilnombre
predicados siempre para devolver falso.

-tiporegex tipo
Cambia la sintaxis de la expresión regular comprendida por -expresión regular y -iregex pruebas que
ocurrir más tarde en la línea de comando. Para ver qué tipos de expresiones regulares se conocen,
utilizan el -tiporegex ayuda. La documentación de Texinfo (ver VEA O) explica el significado
y diferencias entre los distintos tipos de expresión regular.

-advertir, -nowarn
Activa o desactiva los mensajes de advertencia. Estas advertencias se aplican solo a la línea de comando
uso, no a las condiciones que encontrar puede encontrar cuando busca
directorios. El comportamiento predeterminado corresponde a -advertir si la entrada estándar es un
tty, y a -ahora de lo contrario. Si aparece un mensaje de advertencia relacionado con el uso de la línea de comandos
se produce, el estado de salida de encontrar No es afectado. Si el POSIXLY_CORRECT
se establece la variable de entorno, y -advertir is también usado, it is no especificado cual, if
alguna, advertencias seguirá be activo.

GLOBAL CAMPUS
Las opciones globales siempre vuelven verdaderas. Las opciones globales entran en vigor incluso para las pruebas que se realizan
anteriormente en la línea de comando. Para evitar confusiones, las opciones globales deben especificarse en el
línea de comandos después de la lista de puntos de inicio, justo antes de la primera prueba, opción posicional
o acción. Si especifica una opción global en algún otro lugar, encontrar emitirá una advertencia
mensaje que explica que esto puede ser confuso.

Las opciones globales ocurren después de la lista de puntos de inicio, por lo que no son el mismo tipo de
opción como -L, por ejemplo.

-d Un sinónimo de -depth, para compatibilidad con FreeBSD, NetBSD, MacOS X y OpenBSD.

-depth Procesa el contenido de cada directorio antes que el directorio mismo. La acción -delete
también implica -profundidad.

-ayuda ayuda
Imprima un resumen del uso de la línea de comandos de encontrar y salir

-ignore_readdir_race
Normalmente, encontrar emitirá un mensaje de error cuando no establezca un archivo. Si tu
dar esta opción y un archivo se elimina entre el tiempo encontrar lee el nombre del
archivo del directorio y la hora en que intenta registrar el archivo, no hay mensaje de error
Será mencionado. Esto también se aplica a archivos o directorios cuyos nombres se dan
en la línea de comando. Esta opción entra en vigor en el momento en que se abre la línea de comando.
leer, lo que significa que no puede buscar una parte del sistema de archivos con este
opción activada y parte de ella con esta opción desactivada (si necesita hacer eso,
Necesito emitir dos encontrar comandos en su lugar, uno con la opción y otro sin ella).

-máxima profundidad
Desciende como máximo (un entero no negativo) niveles de directorios por debajo del
puntos de partida. -máxima profundidad 0
significa aplicar únicamente las pruebas y acciones a los propios puntos de partida.

-mente
No aplique ninguna prueba o acción a niveles inferiores a (un no negativo
entero). -mente 1 significa procesar todos los archivos excepto los puntos de partida.

-mount No desciende directorios en otros sistemas de archivos. Un nombre alternativo para -xdev, Para
compatibilidad con algunas otras versiones de encontrar.

-noignore_readdir_race
Desactiva el efecto de -ignore_readdir_race.

-nohoja
No optimice asumiendo que los directorios contienen 2 subdirectorios menos que
su recuento de enlaces duros. Esta opción es necesaria cuando se buscan sistemas de archivos que no
no seguir la convención de enlace de directorio de Unix, como los sistemas de archivos de CD-ROM o MS-DOS
o puntos de montaje de volumen AFS. Cada directorio en un sistema de archivos normal de Unix tiene en
al menos 2 enlaces físicos: su nombre y su `. ' entrada. Además, sus subdirectorios
(si hay) cada uno tiene una entrada '..' vinculada a ese directorio. Cuándo encontrar está examinando un
directorio, después de haber establecido 2 subdirectorios menos que el enlace del directorio
cuenta, sabe que el resto de las entradas en el directorio no son directorios
(archivos 'hoja' en el árbol de directorios). Si solo los nombres de los archivos deben ser
examinados, no hay necesidad de establecerlos; esto da un aumento significativo en
velocidad de búsqueda.

-versión, --versión
imprimir el encontrar número de versión y salir.

-xdev No desciende de directorios en otros sistemas de archivos.

TESTS
Algunas pruebas, por ejemplo -nuevoXY y -mismo archivo, permite la comparación entre el archivo
siendo examinado actualmente y algún archivo de referencia especificado en la línea de comando. Cuándo
Estas pruebas se utilizan, la interpretación del archivo de referencia está determinada por el
opciones -H, -L y -P y cualquier anterior -seguir, pero el archivo de referencia solo se examina
una vez, en el momento en que se analiza la línea de comando. Si el archivo de referencia no se puede examinar
(por ejemplo, el stat(2) falla la llamada al sistema), se emite un mensaje de error y encontrar
sale con un estado distinto de cero.

Los argumentos numéricos se pueden especificar como

+n por mayor que n,

-n por menos de n,

n exactamente por n.

-amina n
Se accedió por última vez al archivo n hace minutos.

-uno más nuevo presentar
Se accedió al archivo por última vez más recientemente que presentar fue modificado. Si presentar es un simbólico
enlace y el -H opción o el -L opción está en efecto, el tiempo de acceso al archivo
apunta siempre se utiliza.

-un momento n
Se accedió por última vez al archivo n* Hace 24 horas. Cuando averigüe cuántas 24 horas
períodos atrás se accedió al archivo por última vez, cualquier parte fraccionaria se ignora, por lo que para que coincida
-un momento +1, se debe haber accedido a un archivo al menos dos hace días.

-cmín n
El estado del archivo se modificó por última vez n hace minutos.

-cnewer presentar
El estado del archivo se modificó por última vez más recientemente que presentar fue modificado. Si presentar es un
enlace simbólico y el -H opción o el -L La opción está en efecto, el cambio de estado
siempre se utiliza la hora del archivo al que apunta.

-hora n
El estado del archivo se modificó por última vez n* Hace 24 horas. Ver los comentarios de -un momento a
comprender cómo el redondeo afecta la interpretación de los tiempos de cambio de estado de los archivos.

-empty El archivo está vacío y es un archivo normal o un directorio.

-ejecutable
Coincide con archivos que son ejecutables y directorios que se pueden buscar (en un archivo
sentido de resolución de nombres). Esto tiene en cuenta las listas de control de acceso y otros
Permisos artefactos que el -permanente prueba ignora. Esta prueba hace uso de la
de la máquina(2) llamada al sistema, por lo que puede ser engañado por servidores NFS que hacen mapeo de UID (o
root-squashing), ya que muchos sistemas implementan de la máquina(2) en el kernel del cliente y
por lo que no puede hacer uso de la información de mapeo de UID contenida en el servidor. Porque esto
La prueba se basa únicamente en el resultado de la de la máquina(2) llamada al sistema, no hay
garantizar que se pueda ejecutar un archivo para el que esta prueba sea satisfactoria.

-falso Siempre falso.

-fstipo tipo
El archivo está en un sistema de archivos de tipo tipo. Los tipos de sistemas de archivos válidos varían entre
diferentes versiones de Unix; una lista incompleta de tipos de sistemas de archivos que son
aceptado en alguna versión de Unix u otra es: ufs, 4.2, 4.3, nfs, tmp, mfs, S51K,
S52K. Puedes usar -imprimir con la directiva% F para ver los tipos de
sistemas de archivos.

-gid n El ID de grupo numérico del archivo es n.

-grupo gnomo
El archivo pertenece al grupo gnomo (ID de grupo numérico permitido).

-ilnombre patrón
Me gusta -nombre, pero la coincidencia no distingue entre mayúsculas y minúsculas. Si el -L opción o el -seguir
está en efecto, esta prueba devuelve falso a menos que el enlace simbólico esté roto.

-nombre patrón
Me gusta -nombre, pero la coincidencia no distingue entre mayúsculas y minúsculas. Por ejemplo, los patrones `fo * 'y
'¿F ??' coincidir con los nombres de archivo `Foo ',` FOO', `foo ',` fOo', etc. El patrón `* foo *`
también coincidirá con un archivo llamado '.foobar'.

-inum n
El archivo tiene número de inodo n. Normalmente es más fácil utilizar el -mismo archivo prueba en su lugar.

-trayectoria patrón
Me gusta -camino. pero la coincidencia no distingue entre mayúsculas y minúsculas.

-iregex patrón
Me gusta -expresión regular, pero la coincidencia no distingue entre mayúsculas y minúsculas.

-inombre completo patrón
Ver -trayectoria. Esta alternativa es menos portátil que -trayectoria.

-Enlaces n
El archivo tiene n campo de golf.

-nombre patrón
El archivo es un enlace simbólico cuyo contenido coincide con el patrón de shell patrón.
los metacaracteres no tratan `/ 'ni`.' especialmente. Si el -L opción o el -seguir
está en efecto, esta prueba devuelve falso a menos que el enlace simbólico esté roto.

-mmín n
Los datos del archivo se modificaron por última vez n hace minutos.

-Mtime n
Los datos del archivo se modificaron por última vez n* Hace 24 horas. Ver los comentarios de -un momento a
comprender cómo el redondeo afecta la interpretación de los tiempos de modificación de archivos.

-nombre patrón
La base del nombre del archivo (la ruta con los directorios principales eliminados) coincide con el shell
patrón patrón. Debido a que se eliminan los directorios principales, los nombres de los archivos
considerado para un partido con -nombre nunca incluirá una barra, por lo que `-name a / b '
nunca coincida con nada (probablemente necesite usar -camino en lugar de). Se emite una advertencia
si intenta hacer esto, a menos que se establezca la variable de entorno POSIXLY_CORRECT. El
los metacaracteres (`* ',`?' y `[] ') coinciden con un`.' al comienzo del nombre base (este
es un cambio en findutils-4.2.2; consulte la sección CONFORMIDAD DE LAS NORMAS a continuación). A
ignore un directorio y los archivos debajo de él, use -ciruela pasa; ver un ejemplo en el
descripción de -camino. Los frenillos no se reconocen como especiales, a pesar de que
que algunos proyectiles, incluido Bash, imbuyen a los brackets con un significado especial en el caparazón
patrones. La coincidencia de nombre de archivo se realiza con el uso de la partido fn(3)
función de biblioteca. No olvide incluir el patrón entre comillas para
Protéjalo de la expansión por el caparazón.

-más nuevo presentar
El archivo se modificó más recientemente que presentar. Si presentar es un enlace simbólico y el -H
opción o el -L La opción está en efecto, la hora de modificación del archivo al que apunta
to se utiliza siempre.

-nuevoXY referencia
Tiene éxito si marca de tiempo X del archivo que se está considerando es más reciente que la marca de tiempo Y of
el archivo referencia. Las cartas X y Y puede ser cualquiera de las siguientes letras:

a La hora de acceso al archivo referencia
B La hora de nacimiento del archivo referencia
c El tiempo de cambio de estado del inodo de referencia

m La hora de modificación del archivo referencia
t referencia se interpreta directamente como un tiempo

Algunas combinaciones no son válidas; por ejemplo, no es válido para X para ser t. Algunos
las combinaciones no se implementan en todos los sistemas; por ejemplo B no es compatible con
todos los sistemas. Si una combinación no válida o no admitida de XY se especifica, un fatal
resultados de error. Las especificaciones de tiempo se interpretan como el argumento de la -d
opción de GNU datos. Si intenta utilizar la hora de nacimiento de un archivo de referencia y la
no se puede determinar la hora de nacimiento, aparece un mensaje de error fatal. Si especifica un
prueba que se refiere a la hora de nacimiento de los archivos examinados, esta prueba fallará
para cualquier archivo en el que se desconozca la hora de nacimiento.

-nogrupo
Ningún grupo corresponde al ID de grupo numérico del archivo.

-noso
Ningún usuario corresponde al ID de usuario numérico del archivo.

-camino patrón
El nombre del archivo coincide con el patrón de shell patrón. Los metacaracteres no tratan `/ 'o
'.' especialmente; así por ejemplo,
encontrar . -ruta "./sr*sc"
imprimirá una entrada para un directorio llamado `./src/misc '(si existe). Ignorar
un árbol de directorio completo, use -ciruela pasa en lugar de comprobar todos los archivos del árbol.
Por ejemplo, para omitir el directorio `src / emacs 'y todos los archivos y directorios bajo
e imprima los nombres de los otros archivos encontrados, haga algo como esto:
encontrar . -ruta ./src/emacs -prune -o -print
Tenga en cuenta que la prueba de coincidencia de patrones se aplica a todo el nombre del archivo, comenzando por
de los puntos de inicio nombrados en la línea de comando. Solo tendría sentido usar un
nombre de ruta absoluta aquí si el punto de inicio relevante es también una ruta absoluta. Esta
significa que este comando nunca coincidirá con nada:
buscar bar -path / foo / bar / myfile -print
Find compara el -camino argumento con la concatenación de un nombre de directorio y el
nombre base del archivo que está examinando. Dado que la concatenación nunca terminará con
una barra -camino Los argumentos que terminan en una barra no coincidirán con nada (excepto quizás una
punto de inicio especificado en la línea de comando). El predicado -camino también es compatible
por HP-UX encontrar y estará en una próxima versión del estándar POSIX.

-permanente modo
Los bits de permiso del archivo son exactamente modo (octal o simbólico). Desde una coincidencia exacta
es obligatorio, si desea utilizar este formulario para modos simbólicos, es posible que deba
especificar una cadena de modo bastante compleja. Por ejemplo, `-perm g = w 'solo coincidirá
archivos que tienen el modo 0020 (es decir, aquellos para los que el permiso de escritura de grupo es el
único conjunto de permisos). Es más probable que desee utilizar el `/ 'o el` -'
formularios, por ejemplo, `-perm -g = w ', que coincide con cualquier archivo con escritura de grupo
permiso. Ver el EJEMPLOS sección para algunos ejemplos ilustrativos.

-perma -modo
Todos los bits de permiso modo están configurados para el archivo. Se aceptan modos simbólicos
de esta forma, y ​​esta suele ser la forma en que le gustaría utilizarlos. Ustedes
debe especificar `u ',` g' u `o 'si usa un modo simbólico. Ver el EJEMPLOS .
para algunos ejemplos ilustrativos.

-perma /modo
Cualquiera de los bits de permiso modo están configurados para el archivo. Se aceptan modos simbólicos
ene sta forma. Debe especificar 'u', 'g' u 'o' si usa un modo simbólico. Ver
las EJEMPLOS sección para algunos ejemplos ilustrativos. Si no hay bits de permiso en modo
están configurados, esta prueba coincide con cualquier archivo (la idea aquí es ser coherente con el
comportamiento de -permanente -000).

-perma +modo
Esto ya no es compatible (y ha quedado obsoleto desde 2005). Usar -permanente /modo
preferiblemente.

-legible
Coincide con archivos que son legibles. Esto tiene en cuenta las listas de control de acceso y
otros artefactos de permisos que el -permanente prueba ignora. Esta prueba hace uso de
las de la máquina(2) llamada al sistema, por lo que puede ser engañado por servidores NFS que hacen mapeo de UID
(o aplastamiento de raíces), ya que muchos sistemas implementan de la máquina(2) en el kernel del cliente
y por lo tanto no puede hacer uso de la información de mapeo de UID contenida en el servidor.

-expresión regular patrón
El nombre del archivo coincide con la expresión regular patrón. Este es un partido en todo el camino,
no una búsqueda. Por ejemplo, para hacer coincidir un archivo llamado `./fubar3 ', puede usar el
expresión regular `. * bar. ' o '. * b. * 3', pero no 'f. * r3'. Las expresiones regulares
entendido por encontrar son por defecto Expresiones regulares de Emacs, pero esto puede ser
cambiado con el -tiporegex .

-mismo archivo nombre
El archivo se refiere al mismo inodo que nombre . Cuando el -L está en efecto, esto puede incluir
enlaces simbólicos.

-Talla n[cwbkMG]
Usos de archivos n unidades de espacio, redondeando hacia arriba. Se pueden utilizar los siguientes sufijos:

`b 'para bloques de 512 bytes (este es el valor predeterminado si no se usa un sufijo)

'c' para bytes

'w' para palabras de dos bytes

`k 'para Kilobytes (unidades de 1024 bytes)

'M' para Megabytes (unidades de 1048576 bytes)

'G' para Gigabytes (unidades de 1073741824 bytes)

El tamaño no cuenta bloques indirectos, pero sí cuenta bloques en archivos dispersos
que no están realmente asignados. Tenga en cuenta que los formatos '% k' y '% b'
especificadores de -imprimir manejar archivos dispersos de manera diferente. El sufijo 'b' siempre
denota bloques de 512 bytes y nunca bloques de 1 kilobyte, que es diferente al
comportamiento de -ls.

Los prefijos + y - significan mayor que y menor que, como de costumbre. Tener en cuenta
que el tamaño se redondea a la siguiente unidad. Por lo tanto -Talla -1M no es equivalente
a -Talla -1048576c. El primero solo coincide con archivos vacíos, el último coincide con archivos
de 1 a 1,048,575 bytes.

-verdadero Siempre cierto.

Tipo c
El archivo es de tipo c:

b bloque (búfer) especial

carácter c (sin búfer) especial

directorio d

p tubería con nombre (FIFO)

f archivo regular

l enlace simbólico; esto nunca es cierto si el -L opción o el -seguir opción es
en efecto, a menos que se rompa el vínculo simbólico. Si quieres buscar
enlaces simbólicos cuando -L está en efecto, use -xtipo.

enchufe s

Puerta D (Solaris)

-uido n El ID de usuario numérico del archivo es n.

-usado n
Se accedió por última vez al archivo n días después de la última modificación de su estado.

-usuario uname
El archivo es propiedad del usuario uname (ID de usuario numérico permitido).

-Nombre completo patrón
Ver -path. Esta alternativa es menos portátil que -camino.

-escribible
Coincide con archivos que se pueden escribir. Esto tiene en cuenta las listas de control de acceso y
otros artefactos de permisos que el -permanente prueba ignora. Esta prueba hace uso de
las de la máquina(2) llamada al sistema, por lo que puede ser engañado por servidores NFS que hacen mapeo de UID
(o aplastamiento de raíces), ya que muchos sistemas implementan de la máquina(2) en el kernel del cliente
y por lo tanto no puede hacer uso de la información de mapeo de UID contenida en el servidor.

-xtipo c
Lo mismo que Tipo a menos que el archivo sea un enlace simbólico. Para enlaces simbólicos: si el
-H or -P se especificó la opción, verdadero si el archivo es un enlace a un archivo de tipo c; Si
las -L se ha dado la opción, verdadera si c es 'l'. En otras palabras, para simbólicos
campo de golf, -xtipo comprueba el tipo de archivo que Tipo no marca.

-contexto patrón
(Solo SELinux) El contexto de seguridad del archivo coincide con glob patrón.

ACCIONES
-borrar
Borrar archivos; Es verdadero si la eliminación se realizó correctamente. Si la eliminación falló, aparecerá un mensaje de error.
se emite. Si -borrar falla, encontrarEl estado de salida será distinto de cero (cuando
finalmente sale). Uso de -borrar enciende automáticamente el `-profundidad' opción.

Advertencias: No olvide que la línea de comando de búsqueda se evalúa como una expresión, por lo que
puesta -borrar primero hará encontrar intenta borrar todo lo que está debajo del inicio
puntos que especificó. Al probar un encontrar línea de comando que más tarde tiene la intención de
usar con -borrar, debe especificar explícitamente -profundidad para evitar mas tarde
sorpresas. Porque -borrar implica -profundidad, no puedes usar de manera útil -ciruela pasa y
-borrar juntos.

Exec- comando ;
Implementación comando; Es verdadero si se devuelve el estado 0. Todos los siguientes argumentos para encontrar en
se toman como argumentos del comando hasta que un argumento que consta de ';' es
encontrado. La cadena `{} 'se reemplaza por el nombre del archivo actual que se está procesando
en todas partes ocurre en los argumentos del comando, no solo en los argumentos donde
está solo, como en algunas versiones de encontrar. Ambas construcciones pueden necesitar
para escapar (con un `\ ') o entre comillas para protegerlos de la expansión del shell.
Consulte las EJEMPLOS sección para ejemplos del uso de la Exec- opción. La
El comando especificado se ejecuta una vez para cada archivo coincidente. El comando se ejecuta en
el directorio de inicio. Hay problemas de seguridad inevitables en torno al uso.
de las Exec- acción; deberías usar el -ejecdir opción en lugar.

Exec- comando {} +
Esta variante del Exec- action ejecuta el comando especificado en los archivos seleccionados,
pero la línea de comando se construye agregando cada nombre de archivo seleccionado al final; el
El número total de invocaciones del comando será mucho menor que el número de
archivos coincidentes. La línea de comando está construida de la misma manera que xargs construye
sus líneas de comando. Solo se permite una instancia de "{}" dentro del comando. El
El comando se ejecuta en el directorio de inicio. Si encontrar encuentra un error, esto
a veces puede causar una salida inmediata, por lo que es posible que algunos comandos pendientes no se ejecuten en
todo. Esta variante de Exec- siempre devuelve verdadero.

-ejecdir comando ;

-ejecdir comando {} +
Me gusta Exec-, pero el comando especificado se ejecuta desde el subdirectorio que contiene el
archivo coincidente, que normalmente no es el directorio en el que comenzó encontrar. Esto
un método mucho más seguro para invocar comandos, ya que evita las condiciones de carrera
durante la resolución de las rutas a los archivos coincidentes. Como con el Exec- acción, la
`+ 'forma de -ejecdir construirá una línea de comando para procesar más de una coincidencia
archivo, pero cualquier invocación de comando solo enumerará los archivos que existen en el
mismo subdirectorio. Si utiliza esta opción, debe asegurarse de que su $ RUTA
la variable de entorno no hace referencia a '.'; de lo contrario, un atacante puede ejecutar cualquier
comandos que les gustan dejando un archivo con el nombre apropiado en un directorio en el que
correrás -ejecdir. Lo mismo se aplica a tener entradas en $ RUTA que estan vacíos
o que no son nombres de directorio absolutos. Si encontrar encuentra un error, esto puede
a veces provocan una salida inmediata, por lo que es posible que algunos comandos pendientes no se ejecuten en absoluto.
El resultado de la acción depende de si el + o de ; se está utilizando una variante;
-ejecdir comando {} + siempre devuelve verdadero, mientras que -ejecdir comando {} ; devuelve verdadero
sólo si comando devuelve 0.

-fls presentar
Cierto; me gusta -ls pero escribe a presentar como -fprint. El archivo de salida siempre se crea,
incluso si el predicado nunca coincide. Ver el RARO NOMBRES DE ARCHIVOS sección para
información sobre cómo se manejan los caracteres inusuales en los nombres de archivo.

-fprint presentar
Cierto; imprime el nombre completo del archivo en el archivo presentar. Si presentar no existe cuando encontrar is
corre, se crea; si existe, está truncado. Los nombres de los archivos
`/ dev / stdout 'y`/ dev / stderr'se manejan especialmente; se refieren a la norma
salida y salida de error estándar, respectivamente. El archivo de salida siempre se crea,
incluso si el predicado nunca coincide. Ver el RARO NOMBRES DE ARCHIVOS sección para
información sobre cómo se manejan los caracteres inusuales en los nombres de archivo.

-fprint0 presentar
Cierto; me gusta -imprimir0 pero escribe a presentar como -fprint. El archivo de salida es siempre
creado, incluso si el predicado nunca coincide. Ver el RARO NOMBRES DE ARCHIVOS .
para obtener información sobre cómo se manejan los caracteres inusuales en los nombres de archivo.

-fprintf presentar formato
Cierto; me gusta -imprimir pero escribe a presentar como -fprint. El archivo de salida es siempre
creado, incluso si el predicado nunca coincide. Ver el RARO NOMBRES DE ARCHIVOS .
para obtener información sobre cómo se manejan los caracteres inusuales en los nombres de archivo.

-es cierto; enumerar el archivo actual en ls -dils formato en salida estándar. El bloque cuenta
son de 1K bloques, a menos que se establezca la variable de entorno POSIXLY_CORRECT, en la que
caso de que se utilicen bloques de 512 bytes. Ver el RARO NOMBRES DE ARCHIVOS sección de información
sobre cómo se manejan los caracteres inusuales en los nombres de archivo.

-OK comando ;
Me gusta Exec- pero pregúntele al usuario primero. Si el usuario está de acuerdo, ejecute el comando. De lo contrario
solo devuelve falso. Si se ejecuta el comando, su entrada estándar se redirige desde
/ dev / null.

La respuesta al mensaje se compara con un par de expresiones regulares para
Determine si es una respuesta afirmativa o negativa. Esta expresión regular es
obtenido del sistema si se establece la variable de entorno `POSIXLY_CORRECT ', o
de lo contrario de encontrartraducciones de mensajes. Si el sistema no tiene
definición, encontrarSe utilizará la propia definición. En cualquier caso, el
La interpretación de la expresión regular en sí se verá afectada por el entorno.
variables 'LC_CTYPE' (clases de caracteres) y 'LC_COLLATE' (rangos de caracteres y
clases de equivalencia).

-okdir comando ;
Me gusta -ejecdir pero pregúntele al usuario primero de la misma manera que para -OK. Si el usuario lo hace
no estoy de acuerdo, solo devuelve falso. Si se ejecuta el comando, su entrada estándar es
redirigido desde / dev / null.

-imprimir True; imprima el nombre completo del archivo en la salida estándar, seguido de una nueva línea. Si
estás canalizando la salida de encontrar en otro programa y hay un leve
posibilidad de que los archivos que está buscando contengan una nueva línea,
entonces deberías considerar seriamente usar el -imprimir0 opción en lugar de -impresión. Vea
las RARO NOMBRES DE ARCHIVOS sección para obtener información sobre cómo los personajes inusuales en
se manejan los nombres de archivo.

-imprimir0
Cierto; imprime el nombre completo del archivo en la salida estándar, seguido de un carácter nulo
(en lugar del carácter de nueva línea que -impresión usos). Esto permite nombres de archivo que
contener nuevas líneas u otros tipos de espacios en blanco para ser interpretados correctamente por
programas que procesan el encontrar producción. Esta opción corresponde a la -0 opción de
xargs.

-imprimir formato
Cierto; impresión formato en la salida estándar, interpretando `\ 'escapa y`%'
directivas. Los anchos de campo y las precisiones se pueden especificar como con el `printf 'C
función. Tenga en cuenta que muchos de los campos se imprimen como% s en lugar de% d,
y esto puede significar que los indicadores no funcionan como cabría esperar. Esto también significa que
la bandera '-' funciona (obliga a los campos a alinearse a la izquierda). a diferencia de -impresión,
-imprimir no agrega una nueva línea al final de la cadena. Las fugas y
directivas son:

\ una campana de alarma.

\ b Retroceso.

\ c Deje de imprimir desde este formato inmediatamente y elimine la salida.

\ f Avance de formulario.

\ n Nueva línea.

\ r Retorno de carro.

\ t Pestaña horizontal.

\ v Pestaña vertical.

\ 0 ASCII NUL.

\\ Una barra invertida literal (`\ ').

\ NNN El carácter cuyo código ASCII es NNN (octal).

Un carácter `\ 'seguido de cualquier otro carácter se trata como un carácter ordinario.
carácter, por lo que se imprimen ambos.

%% Un signo de porcentaje literal.

% La hora del último acceso a un archivo en el formato devuelto por la función C `ctime '.

%Ak Hora del último acceso al archivo en el formato especificado por k, que es '@' o
una directiva para la función C 'strftime'. Los posibles valores para k en
enumerados a continuación; algunos de ellos pueden no estar disponibles en todos los sistemas, debido a
diferencias en "strftime" entre sistemas.

@ segundos desde el 1 de enero de 1970, 00:00 GMT, con parte fraccionaria.

Campos de tiempo:

H hora (00..23)

Yo hora (01..12)

k hora (0..23)

l hora (1..12)

M minuto (00..59)

p es AM o PM

r tiempo, 12 horas (hh: mm: ss [AP] M)

S Segundo (00.00 .. 61.00). Hay una parte fraccionaria.

Hora T, 24 horas (hh:mm:ss.)

+ Fecha y hora, separadas por '+', por ejemplo '2004-04-28 + 22: 22: 05.0'.
Esta es una extensión GNU. La hora se indica en la zona horaria actual.
(que puede verse afectado al establecer la variable de entorno TZ). El
El campo de segundos incluye una parte fraccionaria.

Representación de tiempo de X locale (H: M: S). El campo de segundos incluye un
parte fraccional.

Zona horaria Z (p. Ej., EDT), o nada si no se puede determinar ninguna zona horaria

Campos de fecha:

el nombre abreviado del día de la semana de una configuración regional (dom .. sáb)

El nombre completo del día de la semana de una configuración regional, longitud variable (domingo ... sábado)

b nombre del mes abreviado de la configuración regional (enero ... diciembre)

Nombre completo del mes de la configuración regional B, longitud variable (enero ... diciembre)

c fecha y hora de la configuración regional (sábado 04 de noviembre a las 12:02:33 EST 1989). El formato es
lo mismo que para ctime(3) y así preservar la compatibilidad con ese
formato, no hay una parte fraccionaria en el campo de segundos.

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

D fecha (mm / dd / aa)

h lo mismo que b

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

m mes (01..12)

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

w día de la semana (0..6)

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

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

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

Y año (1970 ...)

% b La cantidad de espacio en disco utilizado para este archivo en bloques de 512 bytes. Desde disco
El espacio se asigna en múltiplos del tamaño del bloque del sistema de archivos, esto generalmente es
mayor que% s / 512, pero también puede ser más pequeño si el archivo es escaso
archivo.

% c Hora del último cambio de estado del archivo en el formato devuelto por C `ctime '
función.

%Ck Hora del último cambio de estado del archivo en el formato especificado por k, que es el
lo mismo que para% A.

% d Profundidad del archivo en el árbol de directorios; 0 significa que el archivo es un punto de partida.

% D El número de dispositivo en el que existe el archivo (el campo st_dev de la estructura
stat), en decimal.

% f Nombre del archivo con los directorios principales eliminados (solo el último elemento).

% F Tipo de sistema de archivos en el que se encuentra el archivo; este valor se puede utilizar para -fstype.

% g Nombre del grupo de archivos o ID numérico del grupo si el grupo no tiene nombre.

% G ID de grupo numérico del archivo.

% h Directorios principales del nombre del archivo (todos menos el último elemento). Si el archivo
el nombre no contiene barras (ya que está en el directorio actual) el% h
el especificador se expande a ".".

% H Punto de partida bajo el cual se encontró el archivo.

% i Número de inodo del archivo (en decimal).

% k La cantidad de espacio en disco usado para este archivo en bloques de 1K. Dado que el espacio en disco
se asigna en múltiplos del tamaño del bloque del sistema de archivos, esto generalmente es
mayor que% s / 1024, pero también puede ser más pequeño si el archivo es escaso
archivo.

% l Objeto del enlace simbólico (cadena vacía si el archivo no es un enlace simbólico).

% m Bits de permiso del archivo (en octal). Esta opción utiliza el "tradicional"
números que utilizan la mayoría de las implementaciones de Unix, pero si su particular
La implementación utiliza un orden inusual de bits de permisos octales,
ver una diferencia entre el valor real del modo del archivo y la salida
de% m. Normalmente querrá tener un cero a la izquierda en este número, y
para hacer esto, debe usar el # bandera (como en, por ejemplo, '% # m').

Permisos del archivo% M (en forma simbólica, como para ls). Esta directiva es
compatible con findutils 4.2.5 y posteriores.

% n Número de vínculos físicos al archivo.

% p Nombre del archivo.

% P Nombre del archivo con el nombre del punto de partida bajo el cual se encontró
eliminado.

% s Tamaño del archivo en bytes.

% S Escasez de archivos. Esto se calcula como (BLOCKSIZE * st_blocks / st_size).
El valor exacto que obtendrá para un archivo normal de cierta longitud es
dependiente del sistema. Sin embargo, los archivos normalmente dispersos tendrán valores menores que
1.0, y los archivos que usan bloques indirectos pueden tener un valor mayor
que 1.0. El valor utilizado para BLOCKSIZE depende del sistema, pero normalmente es
512 bytes. Si el tamaño del archivo es cero, el valor impreso no está definido. Sobre
sistemas que carecen de soporte para st_blocks, se supone que la escasez de un archivo
ser 1.0.

% t Hora de la última modificación del archivo en el formato devuelto por C `ctime '
función.

%Tk Hora de la última modificación del archivo en el formato especificado por k, que es el
lo mismo que para% A.

% u Nombre de usuario del archivo o ID de usuario numérico si el usuario no tiene nombre.

% U ID de usuario numérico del archivo.

% y Tipo de archivo (como en ls -l), U = tipo desconocido (no debería suceder)

% Y Tipo de archivo (como% y), además de los siguientes enlaces simbólicos: L = bucle, N = inexistente

El contexto de seguridad del archivo% Z (solo SELinux).

% {% [% (
Reservado para uso futuro.

Un carácter '%' seguido de cualquier otro carácter se descarta, pero el otro
se imprime el carácter (no confíe en esto, ya que se pueden
introducido). Un '%' al final del argumento de formato provoca un comportamiento indefinido
ya que no hay un personaje siguiente. En algunos lugares, puede ocultar su puerta.
claves, mientras que en otros puede eliminar la página final de la novela que está leyendo.

Las directivas% my% d apoyan la # , 0 y + banderas, pero las otras directivas hacen
no, incluso si imprimen números. Directivas numéricas que no admiten estas
banderas incluyen G, U, b, D, k y n. El indicador de formato `- 'es compatible y cambia
la alineación de un campo de justificado a la derecha (que es el predeterminado) a la izquierda
justificado.

Consulte las RARO NOMBRES DE ARCHIVOS sección para obtener información sobre cómo los personajes inusuales en
se manejan los nombres de archivo.

-prune True; si el archivo es un directorio, no descienda a él. Si -profundidad es dado,
falso; sin efecto. Porque -borrar implica -profundidad, no puedes usar de manera útil -ciruela pasa
y -borrar juntos.

-salir Salir inmediatamente. No se dejará en ejecución ningún proceso hijo, pero no más rutas
especificado en la línea de comando será procesado. Por ejemplo, encontrar / tmp / foo
/ tmp / bar -impresión -dejar imprimirá solo / tmp / foo. Cualquier línea de comando que haya sido
construido con -ejecdir ... {} + será invocado antes encontrar salidas. La salida
el estado puede ser cero o no, dependiendo de si ya se ha producido un error.

OPERADORES
Listados en orden de precedencia decreciente:

( expr )
Fuerza la precedencia. Dado que los paréntesis son especiales para el shell, normalmente
Necesito citarlos. Muchos de los ejemplos de esta página de manual utilizan barras diagonales inversas para
este propósito: `\ (... \) 'en lugar de` (...)'.

! expr Cierto si expr Es falso. Este personaje también necesitará generalmente protección contra
interpretación por el caparazón.

-no expr
Igual que ! expr, pero no compatible con POSIX.

Expr1 Expr2
Se considera que dos expresiones seguidas se unen con una "y" implícita; Expr2 no es
evaluado si Expr1 Es falso.

Expr1 -a Expr2
Igual que Expr1 Expr2.

Expr1 -y Expr2
Igual que Expr1 Expr2, pero no compatible con POSIX.

Expr1 -o Expr2
O; Expr2 no se evalúa si Expr1 es verdad.

Expr1 -O Expr2
Igual que Expr1 -o Expr2, pero no compatible con POSIX.

Expr1 , Expr2
Lista; ambos Expr1 y Expr2 siempre se evalúan. El valor de Expr1 se descarta;
el valor de la lista es el valor de Expr2. El operador de coma puede ser útil para
buscando varios tipos diferentes de cosas, pero atravesando el sistema de archivos
jerarquía sólo una vez. El -fprintf La acción se puede utilizar para enumerar los distintos
elementos en varios archivos de salida diferentes.

Ten en cuenta que -a cuando se especifica implícitamente (por ejemplo, mediante dos pruebas que aparecen sin
un operador explícito entre ellos) o explícitamente tiene mayor precedencia que -o. Esto
significa que encontrar . -nombre un archivo -o -nombre barchivo -impresión nunca imprimirá un archivo.

RARO NOMBRES DE ARCHIVOS


Muchas de las acciones de encontrar dar lugar a la impresión de datos que están bajo el control de
otros usuarios. Esto incluye nombres de archivos, tamaños, tiempos de modificación, etc. Archivo
los nombres son un problema potencial ya que pueden contener cualquier carácter excepto `\ 0 'y` /'.
Los caracteres inusuales en los nombres de archivo pueden provocar efectos inesperados y, a menudo, indeseables en su
terminal (por ejemplo, cambiar la configuración de las teclas de función en algunos terminales).
Los caracteres inusuales se manejan de manera diferente mediante varias acciones, como se describe a continuación.

-imprimir0, -fimprimir0
Imprima siempre el nombre de archivo exacto, sin cambios, incluso si la salida va a un
terminal.

-ls, -fls
Los personajes inusuales siempre se escapan. Espacio en blanco, barra invertida y comillas dobles
los caracteres se imprimen utilizando un escape de estilo C (por ejemplo, `\ f ',` \ "').
los caracteres inusuales se imprimen utilizando un escape octal. Otros personajes imprimibles
(solo para -ls y -fls estos son los caracteres entre octal 041 y 0176) están impresos
como es.

-printf, -fprintf
Si la salida no va a un terminal, se imprime como está. De lo contrario, el
el resultado depende de la directiva que se utilice. Las directivas% D,% F,% g,% G,% H,
% Y y% y se expanden a valores que no están bajo el control de los propietarios de los archivos, por lo que
se imprimen tal cual. Las directivas% a,% b,% c,% d,% i,% k,% m,% M,% n,% s,% t,% u
y% U tienen valores que están bajo el control de los propietarios de los archivos, pero que no se pueden
se utiliza para enviar datos arbitrarios al terminal, por lo que se imprimen tal cual. El
se citan las directivas% f,% h,% l,% py% P. Esta cotización se realiza en el mismo
manera como para GNU ls. Este no es el mismo mecanismo de cotización que se utiliza para -ls
y -fls. Si puede decidir qué formato utilizar para la salida de encontrar luego
normalmente es mejor usar '\ 0' como terminador que usar nueva línea, como archivo
los nombres pueden contener espacios en blanco y caracteres de nueva línea. El escenario de la
La variable de entorno 'LC_CTYPE' se utiliza para determinar qué caracteres deben
cotizado.

-impresión, -fprint
La cotización se maneja de la misma forma que para -imprimir y -fprintf. Si estas usando
encontrar en una secuencia de comandos o en una situación en la que los archivos coincidentes pueden tener arbitrarias
nombres, deberías considerar usar -imprimir0 en lugar de -impresión.

El -OK y -okdir Las acciones imprimen el nombre de archivo actual tal cual. Esto puede cambiar en el futuro
en libertad.

Standars Conformidad


Para un cumplimiento más cercano al estándar POSIX, debe configurar POSIXLY_CORRECT
Variable ambiental. Las siguientes opciones se especifican en el estándar POSIX (IEEE Std
1003.1, edición de 2003):

-H Esta opción es compatible.

-L Esta opción es compatible.

-nombre Esta opción es compatible, pero la conformidad POSIX depende de la conformidad POSIX de
el sistema partido fn(3) función de biblioteca. A partir de findutils-4.2.2, shell
Los metacaracteres (`* ',`?' o `[] 'por ejemplo) coincidirán con un`.' inicial, porque
La interpretación 126 de IEEE PASC requiere esto. Este es un cambio de la anterior
versiones de findutils.

Tipo Soportado. POSIX especifica 'b', 'c', 'd', 'l', 'p', 'f' y 's'. GNU también encuentra
admite 'D', que representa una puerta, donde el sistema operativo los proporciona.

-OK Soportado. La interpretación de la respuesta es de acuerdo con el "sí" y el "no"
patrones seleccionados configurando la variable de entorno "LC_MESSAGES". Cuando el
Se establece la variable de entorno POSIXLY_CORRECT, estos patrones se toman del sistema
definición de respuesta positiva (sí) o negativa (no). Ver el sistema
documentación para nl_langinfo(3), en particular YESEXPR y NOEXPR. Cuándo
`POSIXLY_CORRECT 'no está configurado, los patrones se toman de encontrarpropia
catálogo de mensajes.

-más nuevo Soportado. Si el archivo especificado es un enlace simbólico, siempre se elimina la referencia.
Este es un cambio con respecto al comportamiento anterior, que solía tomar el tiempo relevante de
el enlace simbólico; consulte la sección HISTORIA a continuación.

-permanente Soportado. Si no se establece la variable de entorno POSIXLY_CORRECT, algunos modos
Los argumentos (por ejemplo + a + x) que no son válidos en POSIX son compatibles con
compatibilidad con versiones anteriores.

Otros predicados
Los predicados -un momento, -hora, -profundidad, -grupo, -Enlaces, -Mtime, -nogrupo, -noso,
-impresión, -ciruela pasa, -Talla, -usuario y -xdev `-atime ',` -ctime', `-depth ',` -group',
`-links ',` -mtime', `-nogroup ',` -nouser', `-perm ',` -print', `-prune ',` -size',
`-user 'y` -xdev', son todos compatibles.

El estándar POSIX especifica paréntesis `(',`)', negación `! ' y el 'y' y 'o'
operadores -a, -o).

Todas las demás opciones, predicados, expresiones, etc.son extensiones más allá de POSIX.
estándar. Sin embargo, muchas de estas extensiones no son exclusivas de GNU find.

El estándar POSIX requiere que encontrar detecta bucles:

El encontrar la utilidad detectará bucles infinitos; es decir, ingresando a un
directorio visitado que es un antepasado del último archivo encontrado. Cuando
detecta un bucle infinito, find escribirá un mensaje de diagnóstico al error estándar
y recuperará su posición en la jerarquía o cesará.

GNU encontrar cumple con estos requisitos. El recuento de enlaces de directorios que contienen
Las entradas que son enlaces duros a un antepasado a menudo serán más bajas de lo que deberían.
ser. Esto puede significar que GNU find a veces optimizará la visita de un
subdirectorio que en realidad es un enlace a un antepasado. Ya que encontrar en realidad no entra
tal subdirectorio, se permite evitar la emisión de un mensaje de diagnóstico. Aunque esto
El comportamiento puede ser algo confuso, es poco probable que alguien realmente dependa de esto.
conducta. Si la optimización de la hoja se ha desactivado con -nohoja, la entrada del directorio
siempre será examinado y el mensaje de diagnóstico se emitirá cuando sea apropiado.
Los enlaces simbólicos no se pueden utilizar para crear ciclos de sistema de archivos como tales, pero si el -L Opción o
las -seguir opción está en uso, se emite un mensaje de diagnóstico cuando encontrar encuentra un bucle
de enlaces simbólicos. Al igual que con los bucles que contienen enlaces duros, la optimización de la hoja a menudo
Significa que encontrar sabe que no necesita llamar stat () or chdir () en el enlace simbólico,
por lo que este diagnóstico con frecuencia no es necesario.

El -d La opción es compatible por compatibilidad con varios sistemas BSD, pero debe usar
la opción compatible con POSIX -profundidad preferiblemente.

La variable de entorno POSIXLY_CORRECT no afecta el comportamiento del -expresión regular or
-iregex pruebas porque esas pruebas no se especifican en el estándar POSIX.

MEDIO AMBIENTE VARIABLES


LANG Proporciona un valor predeterminado para las variables de internacionalización que no están configuradas o
nulo.

LC_ALL Si se establece en un valor de cadena no vacío, anula los valores de todos los demás
Variables de internacionalización.

LC_COLLATE
El estándar POSIX especifica que esta variable afecta la coincidencia de patrones para ser
utilizado para el -nombre opción. GNU find usa el partido fn(3) función de biblioteca, y así
el soporte para 'LC_COLLATE' depende de la biblioteca del sistema. Esta variable también
afecta la interpretación de la respuesta a -OK; mientras que la variable 'LC_MESSAGES'
selecciona el patrón real utilizado para interpretar la respuesta a -OK, la
La interpretación de cualquier expresión de corchetes en el patrón se verá afectada por
'LC_COLLATE'.

LC_CTYPE
Esta variable afecta el tratamiento de las clases de caracteres utilizadas en
expresiones y también con el -nombre prueba, si el sistema partido fn(3) biblioteca
La función admite esto. Esta variable también afecta la interpretación de cualquier
clases de caracteres en las expresiones regulares utilizadas para interpretar la respuesta a la
aviso emitido por -OK. La variable de entorno 'LC_CTYPE' también afectará a qué
los caracteres se consideran no imprimibles cuando se imprimen los nombres de archivo; ver el
sección NOMBRES INUSUALES.

LC_MENSAJES
Determina la configuración regional que se utilizará para los mensajes internacionalizados. Si el
Se establece la variable de entorno POSIXLY_CORRECT, esto también determina la
interpretación de la respuesta a la solicitud hecha por el -OK acción.

NLSPATH
Determina la ubicación de los catálogos de mensajes de internacionalización.

PATH Afecta a los directorios que se buscan para encontrar los ejecutables invocados por
Exec-, -ejecdir, -OK y -okdir.

POSIXLY_CORRECT
Determina el tamaño de bloque utilizado por -ls y -fls. Si POSIXLY_CORRECT está configurado, bloques
son unidades de 512 bytes. De lo contrario, son unidades de 1024 bytes.

Establecer esta variable también desactiva los mensajes de advertencia (es decir, implica -ahora) por
predeterminado, porque POSIX requiere que, además de la salida para -OK, todos los mensajes
impresos en stderr son diagnósticos y deben dar como resultado un estado de salida distinto de cero.

Cuando no se establece POSIXLY_CORRECT, -permanente + zzz se trata igual que -permanente / zzz si + zzz
no es un modo simbólico válido. Cuando se establece POSIXLY_CORRECT, tales construcciones son
tratado como un error.

Cuando se establece POSIXLY_CORRECT, la respuesta a la solicitud realizada por el -OK la acción es
interpretado de acuerdo con el catálogo de mensajes del sistema, en lugar de de acuerdo con
encontrarTraducciones de mensajes propios.

TZ Afecta la zona horaria utilizada para algunas de las directivas de formato relacionadas con la hora de
-imprimir y -fprintf.

EJEMPLOS


encontrar / Tmp -nombre core Tipo f -impresión | xargs / bin / rm -f

Encuentra archivos con nombre core en o debajo del directorio / Tmp y eliminarlos. Tenga en cuenta que esto
funcionan incorrectamente si hay nombres de archivo que contienen líneas nuevas, comillas simples o dobles,
o espacios.

encontrar / Tmp -nombre core Tipo f -imprimir0 | xargs -0 / bin / rm -f

Encuentra archivos con nombre core en o debajo del directorio / Tmp y eliminarlos, procesando nombres de archivo
de tal manera que los nombres de archivos o directorios que contengan comillas simples o dobles, espacios o
las nuevas líneas se manejan correctamente. El -nombre la prueba viene antes de la Tipo prueba para
evitar tener que llamar stat(2) en cada archivo.

encontrar . Tipo f Exec- presentar '{}' \;

Ejecuta "archivo" en cada archivo dentro o debajo del directorio actual. Observe que las llaves son
encerrados entre comillas simples para protegerlos de la interpretación como script de shell
puntuación. El punto y coma está igualmente protegido por el uso de una barra invertida, aunque
También en ese caso podrían haberse utilizado comillas simples.

encontrar / \( -permanente -4000 -fprintf /root/suid.txt '%#metro %u % p \ n ' \) , \
\( -Talla + 100M -fprintf /root/grande.txt '% -10s % p \ n ' \)

Recorra el sistema de archivos solo una vez, enumerando los archivos y directorios de setuid en
/root/suid.txt y archivos grandes en /root/grande.txt.

encontrar $ HOME -Mtime 0

Busque archivos en su directorio personal que hayan sido modificados en los últimos veinticuatro
horas. Este comando funciona de esta manera porque el tiempo transcurrido desde la última modificación de cada archivo es
dividido por 24 horas y el resto se descarta. Eso significa que para igualar -Mtime 0,
archivo tendrá que tener una modificación en el pasado que es menos de 24 horas antes.

encontrar / sbin / usr / sbin -ejecutable \! -legible -impresión

Busque archivos que sean ejecutables pero no legibles.

encontrar . -permanente 664

Busque archivos que tengan permiso de lectura y escritura para su propietario y grupo, pero
que otros usuarios pueden leer pero no escribir. Archivos que cumplen estos criterios pero tienen
otros bits de permisos establecidos (por ejemplo, si alguien puede ejecutar el archivo) no se
emparejado

encontrar . -permanente -664

Busque archivos que tengan permiso de lectura y escritura para su propietario y grupo, y que
otros usuarios pueden leer, sin tener en cuenta la presencia de bits de permiso adicionales (por
ejemplo, el bit ejecutable). Esto coincidirá con un archivo que tenga el modo 0777, por ejemplo.

encontrar . -permanente / 222

Busque archivos en los que alguien pueda escribir (su propietario, su grupo o cualquier persona)
demás).

encontrar . -permanente / 220
encontrar . -permanente / u + w, g + w
encontrar . -permanente / u = w, g = w

Los tres comandos hacen lo mismo, pero el primero usa el octal
representación del modo de archivo, y los otros dos utilizan la forma simbólica. Estos comandos
todos buscan archivos en los que su propietario o su grupo pueden escribir. Los archivos
no es necesario que el propietario y el grupo puedan escribir para que coincidan; cualquiera servirá.

encontrar . -permanente -220
encontrar . -permanente -g + w, u + w

Ambos comandos hacen lo mismo; buscar archivos en los que se pueda escribir tanto por su
propietario y su grupo.

encontrar . -permanente -444 -permanente / 222 ! -permanente / 111
encontrar . -permanente -a + r -permanente / a + w ! -permanente / a + x

Estos dos comandos buscan archivos que sean legibles para todos ( -permanente -444 or
-permanente -a + r), tenga al menos un bit de escritura establecido ( -permanente / 222 or -permanente / a + w) pero no lo son
ejecutable para cualquiera ! -permanente / 111 y ! -permanente / a + x respectivamente).

cd / directorio-fuente
encontrar . -nombre .instantánea -ciruela pasa -o \( \! -nombre *~ -imprimir0 \) |
cpio -pmd0 / dest-dir

Este comando copia el contenido de / directorio-fuente a / dest-dir, pero omite archivos y
directorios nombrados .instantánea (y cualquier cosa en ellos). También omite archivos o directorios.
cuyo nombre termina en ~, pero no su contenido. El constructo -ciruela pasa -o \( ... -imprimir0 \)
es bastante común. La idea aquí es que la expresión antes -ciruela pasa coincide con cosas que
deben ser podadas. sin embargo, el -ciruela pasa la acción en sí devuelve verdadero, por lo que lo siguiente -o
asegura que el lado derecho se evalúe solo para aquellos directorios que no obtuvieron
podado (el contenido de los directorios podados ni siquiera se visita, por lo que su contenido se
irrelevante). La expresión en el lado derecho de la -o está entre paréntesis solo para
claridad. Enfatiza que el -imprimir0 la acción se lleva a cabo solo para cosas que no
tienen -ciruela pasa aplicado a ellos. Debido a que la condición predeterminada `y 'entre pruebas vincula más
estrechamente que -o, este es el valor predeterminado de todos modos, pero los paréntesis ayudan a mostrar lo que es
pasando.

encontrar repositorio / Exec- test -d {} /. svn \; -O \
Exec- test -d {} /. git \; -O Exec- test -d {} / CVS \; \
-impresión -ciruela pasa

Dado el siguiente directorio de proyectos y su SCM administrativo asociado
directorios, realice una búsqueda eficiente de las raíces de los proyectos:

repo / project1 / CVS
repo / gnu / project2 / .svn
repo / gnu / project3 / .svn
repo / gnu / project3 / src / .svn
repo / project4 / .git

En este ejemplo, -ciruela pasa evita el descenso innecesario a directorios que ya han
sido descubierto (por ejemplo, no buscamos project3 / src porque ya encontramos
project3 / .svn), pero garantiza que se encuentren los directorios hermanos (project2 y project3).

SALIR ESTADO


encontrar sale con el estado 0 si todos los archivos se procesan correctamente, mayor que 0 si hay errores
ocurrir. Esta es deliberadamente una descripción muy amplia, pero si el valor de retorno no es
cero, no debe confiar en la exactitud de los resultados de encontrar.

Cuando ocurre algún error, encontrar puede detenerse inmediatamente, sin completar todas las acciones
especificado. Por ejemplo, algunos puntos de partida pueden no haber sido examinados o algunos pendientes
invocaciones de programa para Exec- ... {} + or -ejecdir ... {} + puede que no se haya realizado.

Utilice buscar en línea utilizando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

Comandos de Linux

Ad