Encontrar comando detallado

  

encontrar es uno de los mejores comandos en Linux, su función de consulta es muy poderosa. La mayor parte del uso de buscar se detalla a continuación: Cómo funciona: recorre la jerarquía de archivos, coincide con los archivos que coinciden con los criterios y realiza las acciones apropiadas.

 

  1. 1.Imprimiendo archivos y listados de directorios
  2. $ find. -print #Imprimiendo archivos y listados de directorios

    Al usar -print, ’ \\ n ’ como un delimitador para separar archivos. -print0 indica que ’ \\ 0 ’ se utiliza como un delimitador para imprimir cada nombre de archivo que coincida. Este método es muy efectivo para los nombres de archivo con ’ \\ n ’. Sin embargo, después de la prueba real en centos, find muestra directamente el archivo coincidente, sin la opción -print. 2. Coincidir con la opción de búsqueda según el nombre del archivo o la expresión regular -name especifica la cadena con la que debe coincidir el nombre del archivo.

     

    1. $ find. -Name " * .txt " -print # Imprimir archivos que terminan con .txt
    2. $ find. -iname " *. txt " -print # -iname indica que el nombre del archivo correspondiente ignora el caso

      3. Restricciones condicionales, que coinciden con una de varias condiciones -a: significa y -o: significa o -not: significa no

       

      1. $ find .
        ((-name " *. txt " -o -name " *. pdf " \\) -print #Imprima el archivo que termina en .txt o .pdf en el directorio actual
      2. $ find. \\ ( -name " *. txt " -a -name " a * " \\) -print #Imprima el archivo comenzando con a y terminando con .txt en el directorio actual
      3. $ find. -not \\ ( -name " *. txt " -a -name " a * " \\) -print #Imprima los archivos que no comiencen con o terminen con .txt en el directorio actual
      4. $ find. -not \\ (-name " *. txt " -o -name " a * " \\) -print # Imprime el archivo en el directorio actual que no comienza con a y no termina con .txt

        : el uso no se deriva de la ley de De Morgan, consulte http://en.wikipedia.org/wiki/%E5%BE%B7%E6%91%A9%E6%A0%B9%E5 % AE% 9A% E5% BE% 8B

        -path: este parámetro se usa para coincidir con la ruta del archivo como un todo.

         

        1. $ find /home /user -path " * sh " -print
        2. /home/user/bin/1.sh < Br>
        3. /home /user /bash
        4. -regex: Este parámetro es similar a -path, excepto que coincide con la ruta del archivo según las expresiones regulares.
        5. $ find. -regex ". * \\ (\\ .py \\ |  \\ .sh \\) $ "

          4. ¡Los parámetros negativos encontrados también pueden usar "! " como un parámetro negativo.

           

          1. $ find.! -name " .txt " -print #match todos los archivos que no terminan en .txt

            5. El comando de búsqueda profunda basada en el directorio atravesará todos los subdirectorios cuando se use. Podemos usar algunos parámetros para limitar la profundidad de su recorrido.

             

            1. -maxdepth: Límite máximo de profundidad, 1 significa solo en el directorio actual, 2 significa los dos niveles siguientes. . . . . .
            2. $ find. -maxdepth 1 -type f -print #Lista todos los archivos comunes en el directorio actual
            3. -mindepth: Límite de profundidad mínima, similar al uso anterior.
            4. $ find. -mindepth 2 -type f -print #Lista todos los archivos de al menos dos subdirectorios del directorio actual

              6.Busque tipos de archivo en linux según el tipo de archivo Tipo de archivo tipo parámetro Archivo normal f Archivo de símbolos l Directorio d Dispositivo de caracteres c Dispositivo de bloque b Sockets Fifo (archivo de tubería) p

               

              1. $ find. - Escriba f -print
              2. $ find. -Type d -print

                7. Buscando tiempo de archivo Cada archivo en el sistema de archivos de Linux tiene tres marcas de tiempo: tiempo de acceso (atime — — tiempo de acceso): esta es la última vez que se accedió al archivo. Hora de cambio (ctime — — hora de cambio): es la hora en que cambia el inodo del archivo (¿qué es inode?) Cuando agrega datos a un archivo o elimina datos, cuando se modifica el propietario del archivo, cuando cambia el enlace, El ctime del archivo cambiará. Hora de modificación (mtime — — hora de modificación): es la hora en que se modificó por última vez el contenido del archivo. -atime, -ctime, -mtime puede usarse como el parámetro de tiempo de encontrar. La unidad es día, y estos valores generalmente tienen un + o -: + para mayor que, y - para menor que.

                 

                1. $ find. -type f -atime -7 -print #Imprimir archivos a los que se accede dentro de los 7 días
                2. $ find. -type f -atime 7 -print #Imprimir archivos a los que se accedió hace tan solo 7 días
                3. $ find. -type f -atime +7 -print #Imprimir archivos a los que no se ha accedido durante más de 7 días

                  El tiempo anterior se basa en " day ", y se basa en " minute ". -amin -mmin -cmin El uso es similar al anterior, pero no es un ejemplo nuevamente. Otra característica interesante de find es el parámetro -newer. Podemos especificar un archivo de referencia para comparar marcas de tiempo y luego buscar todos los archivos que sean más nuevos que el archivo de referencia.

                   

                  1. $ find. -type f -newer file.txt -print

                    8.Búsqueda basada en el tamaño del archivo

                     

                    1. -size: El uso es similar al anterior
                    2. $ find. -type f -size + 2k #Encuentra archivos de más de 2k
                    3. $ encuentra. -tipo f-tamaño 2k #Encuentra un archivo igual a 2k
                    4. $ encuentra. -tipo f-tamaño -2k # Encuentra archivos más pequeños que 2k

                      excepto k Existen otras unidades de tamaño de archivo b — — bloques (512 bytes). c — — bytes. w — — palabra. k — — kilobytes. M — — megabytes. G — — gigabytes. 9. Eliminar archivos coincidentes

                       

                      1. El parámetro -delete puede hacer esto.
                      2. $ find. -type f -name " *. swp " -delete

                        10. Basado en los permisos de archivo y la coincidencia de propiedad

                         
                          < Li>
                        1. -perm:
                        2. $ find. -Type f -perm 644 -print # Imprimir un archivo con permiso 644
                        3. -user: puede resolver el nombre de usuario O uid
                        4. $ find. -Type f -user root -print # Imprima el archivo que es propiedad del usuario root

                          11. Ejecute comandos o acciones junto con find

                           

                          1. -exec: Este parámetro es uno de los parámetros más potentes de encontrar.
                          2. $ find. -type f -name " *. c " -exec cat {} \\; > file.txt #Envíe todos los programas c juntos y escríbalos en un solo archivo file.txt
                          3. $ find. -type f -mtime +10 -name " *. txt " -exec cp {} /tmp \\; #Copia el archivo .txt hace 10 días a /tmp
                          4. Nota: {} indica el archivo coincidente.

                            12. Permitir que se omitan directorios específicos

                             

                            1. $ find. \\ (- name " .git " -prune \\) -o \\ (-type f -print \\)

                              13.find en conjunto con xargs

                               

                              1. xargs: will La entrada estándar se convierte a parámetros de línea de comando.
                              2. $ find. -type f -name " *. txt " -print0 | Xargs -0 rm -f # Eliminar el archivo coincidente, xargs -0 con \\ 0 como delimitador de entrada.
                              3. $ find. -type f -name " *. c " -print0 |  Xargs -0wc -l #Contar el número de líneas en todos los archivos de programa c


Copyright © Conocimiento de Windows All Rights Reserved