La función del parámetro -path -prune en el comando de búsqueda de Linux se introdujo en

  
.

El comando de búsqueda en Linux tiene varios métodos de búsqueda. ¿Qué pasa con el parámetro -path -prune en el comando de búsqueda? La siguiente pequeña serie le presentará el uso de -path -prune en el comando de búsqueda.

Si encuentra el archivo en el directorio actual, y hay una gran cantidad de archivos y directorios (directorio de múltiples capas) bajo el directorio actual, incluyendo dir0, dir1 y directorio2. . . Como el directorio y dir00, dir01. .dir10, dir11. . Subdirectorios.

1. Encuentre todos los archivos de sufijo txt

encuentre en el directorio actual. /-name * .txt

2. Busque el archivo de sufijo txt

encuentre en el directorio dir0 y subdirectorio debajo del directorio actual. /-path y lsquo;. /dir0 * ’ -name * .txt

3. Busque el archivo de sufijo txt

encuentre en el subdirectorio dir00 y sus subdirectorios debajo del directorio dir0 en el directorio actual. /-path ‘ * dir00 * ’ -name * .txt

4. Busque el archivo de sufijo txt

busque en un directorio que no sea dir0 y subdirectorios. /-path y lsquo;. /dir0 * ’ -a -prune -o -name * .txt -print

Descripción: -a debe ser una abreviatura de y, que significa operador lógico ‘ o ’ (&&); -o debe ser una abreviatura de o, que significa operador lógico ‘ &’ (| | ), -no significa que no.

La línea de comando significa: si el directorio dir0 existe (es decir, el lado izquierdo de -a es verdadero), entonces se encuentra el valor de -prune, -prune devuelve verdadero, ‘ &’ la expresión lógica es verdadera (es decir, La ruta ‘ ./dir0 * ’ -a -prune es verdadera), el comando buscar encontrará el archivo de sufijo txt en el directorio que no sea este directorio y lo imprimirá; si el directorio dir0 no existe (es decir, el lado izquierdo de -a es falso), Entonces no evalúe la expresión lógica -prune, ‘ &’ es falsa, luego busque todos los archivos de sufijo txt en el directorio actual.

5. Busque el archivo de sufijo txt

busque en un directorio que no sea dir0, dir1 y subdirectorios. /\\ (-path ‘ ./dir0 * ’ -o -path ‘ ./dir1 * ’ \\) -a -prune -o -name * .txt -print

Nota: Paréntesis () representa una combinación de expresiones. Es decir, al shell no se le da una explicación especial para los caracteres que siguen, sino que se deja al comando buscar para explicar su significado. Como la línea de comandos no puede usar paréntesis directamente, debe usar la barra invertida ‘ \\ ’ para cambiar (es decir, ‘ \\ ’ cambiar los caracteres para que la línea de comandos conozca los paréntesis). También tenga en cuenta que ‘ \\ (’, ‘ \\) ’ requiere espacios en ambos lados.

6. Encuentre el archivo de sufijo txt

encuentre en dir0, dir1 y subdirectorios. /\\ (-path ‘ ./dir0 * ’ -o -path ‘ ./dir1 * ’ \\) -a -name * .txt -print

+1. Busque el archivo de sufijo txt

busque en el directorio dir_general. /-path ‘ * /dir_general /* ’ -name * .txt -print

Lo anterior es el uso del comando find en Linux -path -prune, puede cargar, encontrar la combinación -path -prune parámetro Puede producir 6 tipos de métodos de búsqueda para satisfacer las necesidades de los usuarios que necesitan una búsqueda específica y probarlo.

Copyright © Conocimiento de Windows All Rights Reserved