One place for hosting & domains

      Find

      IT Professionals Find Optimism Amidst COVID-19 Pandemic


      INAP’s Senior Vice President, Product & Technology, Jennifer Curry, appeared as a guest on a recent episode of TechStrong TV, a web series produced by the editors of Devops.com and Digital Anarchist. Curry discusses INAP’s latest research about the pandemic’s impact on IT infrastructure strategies, the prominence of security solutions in 2021 and the importance of visibility in managed services.

      Check out Curry’s segment with Charlene O’Hanlon of MediaOps below:

      Curry spoke on findings from INAP’s third-annual State of IT Infrastructure Management report, noting that IT professionals now feel their colleagues view them as essential due to the pandemic. In the previous year’s survey, IT pros reported feeling bogged down by mundane tasks and lacked the time to champion innovations for their organizations.

      “The feeling among IT staff is optimistic about their place inside the company,” Curry said. “[Infrastructure demand] was unprecedented and it afforded a lot of optimism and creativity—opportunity for folks to showcase a different side of IT and where we fit.”

      Even as the world returns to some sense of “normal,” IT will continue to find optimism in the call for innovation. There will be less of a focus on scale as sights shift to how infrastructure is pulled together and how people will interact with it moving forward. Curry noted that there will especially be an emphasis for security solutions to protect hybrid infrastructures.

      “Security is a layered approach,” said Curry. “It’s not one and done. It’s not one solution. It’s layers against those different components of the infrastructure.”

      Network, data and OS security figured prominently as an area that companies need help managing, with 35 percent of survey respondents noting this as a vital quality of infrastructure solutions since the beginning of the pandemic. Service providers can help build layers of security to ensure infrastructure solutions are safe and compliant.

      Curry noted that cybersecurity strategies will become more and more complex as a company’s attack surface grows and data collected at the edge goes back to the core. Providers will bring their expertise from working with so many different clients and environments to figure out the best methods to protect and secure that data and infrastructure.

      “One of the really critical items for CTOs, IT directors and application managers will be the visibility into everything going on that they’re not controlling,” Curry said. “You want to know. You want to be confident and want to see what your partners are doing.”

      In November of 2020, INAP furthered its efforts to achieve unprecedented managed cloud visibility with the latest release of its Intelligent Monitoring service, which is now available for Bare Metal and Dedicated Private Cloud customers.

      Laura Vietmeyer


      READ MORE



      Source link

      Verwenden von Find und Locate zur Suche nach Dateien unter Linux


      Einführung

      Ein Problem, auf das Benutzer stoßen, wenn sie zum ersten Mal mit einem Linux-Rechner arbeiten, ist die Frage, wie Sie die gesuchten Dateien finden können.

      Dieser Leitfaden behandelt die Verwendung des treffend benannten Befehls find Dies hilft Ihnen bei der Suche nach Dateien auf Ihrem VPS unter Verwendung einer Vielzahl von Filtern und Parametern. Wir werden auch kurz auf den Befehl locate eingehen, mit dem Sie auf andere Weise nach Dateien suchen können.

      Suchen nach Name

      Die offensichtlichste Möglichkeit der Suche nach Dateien ist nach Name.

      Um eine Datei anhand ihres Namens zu finden, geben Sie Folgendes ein:

      Dabei wird die Groß- und Kleinschreibung beachtet, d. h. eine Suche nach file unterscheidet sich von einer Suche nach File.

      Um eine Datei nach dem Namen zu suchen, aber die Groß-/Kleinschreibung der Abfrage zu ignorieren, geben Sie Folgendes ein:

      Wenn Sie alle Dateien finden möchten, die sich nicht an ein bestimmtes Muster halten, können Sie die Suche mit -not oder ! umkehren. Wenn Sie ! verwenden, müssen Sie das Zeichen Maskieren, damit die Bash nicht versucht, es zu interpretieren, bevor „find“ agieren kann:

      • find -not -name "query_to_avoid"

      Oder

      • find ! -name "query_to_avoid"

      Suchen nach Typ

      Sie können den Typ der Dateien angeben, die Sie mit dem Parameter -type finden möchten. Es funktioniert wie folgt:

      • find -type type_descriptor query

      Einige der gebräuchlichsten Deskriptoren, die Sie zur Angabe des Dateityps verwenden können, sind:

      • f: reguläre Datei

      • d: Verzeichnis

      • l: symbolischer Link

      • c: Zeichengeräte

      • b: Blockgeräte

      Wenn wir beispielsweise alle Zeichengeräte in unserem System finden möchten, könnten wir diesen Befehl ausgeben:

      Output

      /dev/parport0 /dev/snd/seq /dev/snd/timer /dev/autofs /dev/cpu/microcode /dev/vcsa7 /dev/vcs7 /dev/vcsa6 /dev/vcs6 /dev/vcsa5 /dev/vcs5 /dev/vcsa4 . . .

      Wir können nach allen Dateien suchen, die in .conf enden:

      • find / -type f -name "*.conf"

      Output

      /var/lib/ucf/cache/:etc:rsyslog.d:50-default.conf /usr/share/base-files/nsswitch.conf /usr/share/initramfs-tools/event-driven/upstart-jobs/mountall.conf /usr/share/rsyslog/50-default.conf /usr/share/adduser/adduser.conf /usr/share/davfs2/davfs2.conf /usr/share/debconf/debconf.conf /usr/share/doc/apt-utils/examples/apt-ftparchive.conf . . .

      Filtern nach Zeit und Größe

      „Find“ bietet Ihnen eine Vielzahl von Möglichkeiten, um Ergebnisse nach Größe und Zeit zu filtern.

      Größe

      Sie können mit dem Parameter -size nach Größe filtern.

      Wir fügen ein Suffix am Ende unseres Wertes hinzu, das angibt, wie wir zählen. Dies sind einige beliebte Optionen:

      • c: Bytes

      • k: Kilobytes

      • M: Megabytes

      • G: Gigabytes

      • b: 512-Byte-Blöcke

      Um alle Dateien zu finden, die genau 50 Bytes groß sind, geben Sie Folgendes ein:

      Um alle Dateien zu finden, die kleiner als 50 Bytes sind, können wir stattdessen diese Form verwenden:

      Um alle Dateien zu finden, die größer als 700 Megabytes sind, können wir diesen Befehl verwenden:

      Zeit

      Linux speichert Zeitdaten über Zugriffszeiten, Modifizierungszeiten und Änderungszeiten.

      • Zugriffszeit: Letzter Zeitpunkt, in dem eine Datei gelesen oder geschrieben wurde.

      • Modifizierungszeit: Letzter Zeitpunkt, an dem der Inhalt der Datei modifiziert wurde.

      • Änderungszeit: Letzter Zeitpunkt, an dem die Inode-Metadaten der Datei geändert wurden.

      Wir können diese mit den Parametern -atime, -mtime und -ctime verwenden. Diese können die Plus- und Minus-Symbole verwenden, um größer als oder kleiner als anzugeben, wie wir es bei der Größe getan haben.

      Der Wert dieses Parameters gibt an, wie viele zurückliegende Tage Sie suchen möchten.

      Um Dateien zu finden, die eine Modifizierungszeit von vor einem Tag haben, geben Sie Folgendes ein:

      Wenn wir Dateien möchten, auf die vor weniger als einem Tag zugegriffen wurden, können wir Folgendes eingeben:

      Um Dateien zu erhalten, deren letzte Änderung der Metadaten mehr als 3 Tage zurückliegt, geben Sie Folgendes ein:

      Es gibt auch einige Begleitparameter, mir denen wir Minuten anstelle von Tagen angeben können:

      Dadurch werden die Dateien angegeben, die in der letzten Minute im System modifiziert wurden.

      „Find“ kann auch Vergleiche gegen eine Referenzdatei durchführen und diejenigen zurückgeben, die neuer sind:

      Suchen nach Eigentümern und Berechtigungen

      Sie können auch nach Dateien anhand des Dateieigentümers oder des Gruppeneigentümers suchen.

      Dazu verwenden Sie die Parameter -user bzw. -group. Suchen Sie eine Datei, deren Eigentümer der Benutzer „syslog“ ist, indem Sie Folgendes eingeben:

      Ähnlich können wir Dateien angeben, deren Eigentümer die Gruppe „shadow“ ist, indem wir Folgendes eingeben:

      Wir können auch nach Dateien mit bestimmten Berechtigungen suchen.

      Wenn wir einen genauen Satz von Berechtigungen abgleichen möchten, verwenden wir diese Form:

      Dies gleicht Dateien mit genau den angegebenen Berechtigungen ab.

      Wenn wir etwas mit zumindest diesen Berechtigungen angeben möchten, können Sie diese Form verwenden:

      Dies gleicht alle Dateien ab, die zusätzliche Berechtigungen aufweisen. Eine Datei mit der Berechtigung „744“ würde in diesem Fall gefunden werden.

      Filtern nach Tiefe

      Für diesen Abschnitt erstellen wir eine Verzeichnisstruktur in einem temporären Verzeichnis. Es enthält drei Verzeichnisebenen, mit zehn Verzeichnissen auf der ersten Ebene. Jedes Verzeichnis (einschließlich des temporären Verzeichnisses) enthält zehn Dateien und zehn Unterverzeichnisse.

      Erstellen Sie diese Struktur durch Ausgabe der folgenden Befehle:

      • cd
      • mkdir -p ~/test/level1dir{1..10}/level2dir{1..10}/level3dir{1..10}
      • touch ~/test/{file{1..10},level1dir{1..10}/{file{1..10},level2dir{1..10}/{file{1..10},level3dir{1..10}/file{1..10}}}}
      • cd ~/test

      Sie können sich die Verzeichnisstrukturen mit ls und cd ansehen, um einen Überblick über die Organisation zu erhalten. Wenn Sie fertig sind, kehren Sie in das Testverzeichnis zurück:

      Wir werden uns damit beschäftigen, wie bestimmte Dateien aus dieser Struktur zurückgegeben werden. Versuchen wir zunächst ein Beispiel mit einer regulären Namenssuche, zum Vergleich:

      Output

      ./level1dir7/level2dir8/level3dir9/file1 ./level1dir7/level2dir8/level3dir3/file1 ./level1dir7/level2dir8/level3dir4/file1 ./level1dir7/level2dir8/level3dir1/file1 ./level1dir7/level2dir8/level3dir8/file1 ./level1dir7/level2dir8/level3dir7/file1 ./level1dir7/level2dir8/level3dir2/file1 ./level1dir7/level2dir8/level3dir6/file1 ./level1dir7/level2dir8/level3dir5/file1 ./level1dir7/level2dir8/file1 . . .

      Es gibt eine Menge Ergebnisse. Wenn wir die Ausgabe in einen Zähler leiten, können wir sehen, dass es insgesamt 1111 Ergebnisse gibt:

      Output

      1111

      Das sind wahrscheinlich zu viele Ergebnisse, um für Sie in den meisten Fällen nützlich zu sein. Versuchen wir, dies einzugrenzen.

      Sie können die maximale Tiefe der Suche unter dem Suchverzeichnis auf höchster Ebene festlegen:

      • find -maxdepth num -name query

      Um „file1“ nur in den Verzeichnissen „level1“ und höher zu finden, können Sie eine maximale Tiefe von 2 (1 für das Verzeichnis auf höchster Ebene und 1 für die Verzeichnisse level1) festlegen:

      • find -maxdepth 2 -name file1

      Output

      ./level1dir7/file1 ./level1dir1/file1 ./level1dir3/file1 ./level1dir8/file1 ./level1dir6/file1 ./file1 ./level1dir2/file1 ./level1dir9/file1 ./level1dir4/file1 ./level1dir5/file1 ./level1dir10/file1

      Das ist eine wesentlich besser verwaltbare Liste.

      Sie können auch ein Mindestverzeichnis angeben, wenn Sie wissen, dass alle Dateien ab einem bestimmten Punkt unter dem aktuellen Verzeichnis bestehen:

      • find -mindepth num -name query

      Wir können dies verwenden, um nur die Dateien am Ende der Verzeichniszweige zu finden:

      • find -mindepth 4 -name file

      Output

      ./level1dir7/level2dir8/level3dir9/file1 ./level1dir7/level2dir8/level3dir3/file1 ./level1dir7/level2dir8/level3dir4/file1 ./level1dir7/level2dir8/level3dir1/file1 ./level1dir7/level2dir8/level3dir8/file1 ./level1dir7/level2dir8/level3dir7/file1 ./level1dir7/level2dir8/level3dir2/file1 . . .

      Wiederum wird dies aufgrund unserer verzweigten Verzeichnisstruktur eine große Anzahl von Ergebnissen (1000) zurückgegeben.

      Sie können die Parameter Min- und Max-Tiefe kombinieren, um sich auf einen engen Bereich zu konzentrieren:

      • find -mindepth 2 -maxdepth 3 -name file

      Output

      ./level1dir7/level2dir8/file1 ./level1dir7/level2dir5/file1 ./level1dir7/level2dir7/file1 ./level1dir7/level2dir2/file1 ./level1dir7/level2dir10/file1 ./level1dir7/level2dir6/file1 ./level1dir7/level2dir3/file1 ./level1dir7/level2dir4/file1 ./level1dir7/file1 . . .

      Ausführen und Kombinieren von „Find“-Befehlen

      Sie können einen beliebigen Hilfsbefehl auf alles, was „find“ findet, ausführen, indem Sie den Parameter -exec verwenden. Dieser wird wie folgt aufgerufen:

      • find find_parameters -exec command_and_params {} ;

      Die {} werden als Platzhalter für die Dateien verwendet, die „find“ findet. Das ; wird verwendet, damit „find“ weiß, wo der Befehl endet.

      Wir könnten beispielsweise die Dateien im vorherigen Abschnitt finden, die 644 Berechtigungen aufwiesen, und sie so ändern, dass sie 664 Berechtigungen aufweisen:

      • cd ~/test
      • find . -type f -perm 644 -exec chmod 664 {} ;

      Wir könnten dann die Verzeichnisberechtigungen wie folgt ändern:

      • find . -type d -perm 755 -exec chmod 700 {} ;

      Wenn Sie verschiedene Ergebnisse miteinander verketten möchten, können Sie die Befehle -and oder -or verwenden. Das -and wird angenommen, wenn es weggelassen wird.

      • find . -name file1 -or -name file9

      Suchen von Dateien unter Verwendung von „locate“

      Eine Alternative zur Verwendung von find, ist der Befehl locate. Dieser Befehl ist oft schneller und kann das gesamte Dateisystem mit Leichtigkeit durchsuchen.

      Sie können den Befehl unter Debian oder Ubuntu mit apt installieren:

      Unter CentOS verwenden Sie stattdessen dnf:

      Der Grund, warum locate schneller ist als find, ist, dass er sich auf eine Datenbank der Dateien im Dateisystem verlässt.

      Die Datenbank wird normalerweise einmal täglich mit einem Cron-Skript aktualisiert, aber Sie können sie manuell aktualisieren, indem Sie Folgendes eingeben:

      Führen Sie diesen Befehl nun aus. Denken Sie daran, dass die Datenbank immer aktuell sein muss, wenn Sie kürzlich erworbene oder erstellte Dateien finden möchten.

      Um Dateien mit „locate“ zu finden, verwenden Sie einfach diese Syntax:

      Sie können die Ausgabe auf einige Arten filtern.

      Um beispielsweise nur Dateien zurückzugeben, die die Abfrage selbst enthalten, anstatt jede Datei zurückzugeben, die die Abfrage in den Verzeichnissen aufweist, die zu ihr führen, können Sie das -b verwenden, um nur den „Basisnamen“ zu suchen:

      Wenn „locate“ nur Ergebnisse zurückgeben soll, die noch im Dateisystem vorhanden sind (die nicht zwischen dem letzten Aufruf von updatedb und dem aktuellen Aufruf von locate entfernt wurden), verwenden Sie das Flag -e:

      Um eine Statistik über die Informationen anzuzeigen, die „locate“ katalogisiert hat, verwenden Sie die Option -S:

      Output

      Database /var/lib/mlocate/mlocate.db: 3,315 directories 37,228 files 1,504,439 bytes in file names 594,851 bytes used to store database

      Zusammenfassung

      Sowohl „find“ als auch „locate“ sind gute Methoden, um Dateien auf einem System zu finden. Es ist Ihnen überlassen zu entscheiden, welches dieser Tools in der jeweiligen Situation angemessen ist.

      „Find“ und „locate“ sind leistungsfähige Befehle, die durch die Kombination mit anderen Dienstprogrammen über noch verstärkt werden können. Experimentieren Sie mit der Filterung durch Verwendung von Befehlen wie wc, sort und grep.



      Source link

      Cómo usar Find y Locate para buscar archivos en Linux


      Introducción

      Un problema al que los usuarios se enfrentan cuando utilizan por primera vez una máquina Linux es cómo encontrar los archivos que buscan.

      En esta guía, se explicará cómo utilizar el comando llamado find de manera adecuada. Eso lo ayudará a buscar archivos en su VPS utilizando diversos filtros y parámetros. También abordaremos brevemente el comando locate, que se puede utilizar para buscar archivos de distinta manera.

      Cómo buscar por nombre

      La forma más evidente de buscar archivos es por nombre.

      Para encontrar un archivo por nombre, escriba lo siguiente:

      Distingue entre mayúsculas y minúsculas, lo que significa que una búsqueda de file será diferente a File.

      Para encontrar un archivo por nombre, pero ignorar mayúsculas o minúsculas en la consulta, escriba lo siguiente:

      Si desea encontrar todos los archivos que no se ajustan a un patrón específico, puede invertir la búsqueda con -not o !. Si utiliza !, debe quitar el carácter de forma que bash no intente interpretarlo antes que find pueda actuar:

      • find -not -name "query_to_avoid"

      o

      • find ! -name "query_to_avoid"

      Cómo buscar por tipo

      Puede especificar el tipo de archivos que desea encontrar con el parámetro -type. Funciona de la siguiente manera:

      • find -type type_descriptor query

      A continuación, encontrará algunos de los descriptores más frecuentes que puede utilizar para especificar el tipo de archivo:

      Por ejemplo, si quisiéramos encontrar todos los dispositivos de caracteres en nuestro sistema, podríamos ejecutar el siguiente comando:

      Output

      /dev/parport0 /dev/snd/seq /dev/snd/timer /dev/autofs /dev/cpu/microcode /dev/vcsa7 /dev/vcs7 /dev/vcsa6 /dev/vcs6 /dev/vcsa5 /dev/vcs5 /dev/vcsa4 . . .

      Podemos buscar todos los archivos que terminan en .conf como se muestra a continuación:

      • find / -type f -name "*.conf"

      Output

      /var/lib/ucf/cache/:etc:rsyslog.d:50-default.conf /usr/share/base-files/nsswitch.conf /usr/share/initramfs-tools/event-driven/upstart-jobs/mountall.conf /usr/share/rsyslog/50-default.conf /usr/share/adduser/adduser.conf /usr/share/davfs2/davfs2.conf /usr/share/debconf/debconf.conf /usr/share/doc/apt-utils/examples/apt-ftparchive.conf . . .

      Cómo filtrar por fecha y tamaño

      Find le proporciona diversas maneras de filtrar resultados por tamaño y fecha.

      Tamaño

      Puede filtrar por tamaño utilizando el parámetro -size.

      Añadimos un sufijo al final de nuestro valor con el que se especifica cómo se cuenta. Estas son algunas opciones populares:

      • c: bytes

      • k: kilobytes

      • M: megabytes

      • G: gigabytes

      • b: bloques de 512 bytes

      Para encontrar todos los archivos que son exactamente de 50 bytes, escriba lo siguiente:

      Para encontrar todos los archivos de menos de 50 bytes, podemos utilizar la siguiente forma:

      Para encontrar todos los archivos de más de 700 megabytes, podemos utilizar el siguiente comando:

      Fecha

      Linux almacena datos de fecha de las fechas de acceso, fechas de modificación y fechas de cambio.

      • Fechas de acceso: La última vez que se leyó o se escribió un archivo.

      • Fecha de modificación: La última vez que el contenido del archivo se modificó.

      • Fecha de cambio: La última vez que se modificaron los metadatos inode del archivo.

      Podemos utilizarlos con los parámetros -atime, -mtime y -ctime. Con estos, se pueden usar los signos de más y menos para especificar mayor o menor que, como hicimos con el tamaño.

      Con el valor de este parámetro, se especifica cuántos días atrás le gustaría buscar.

      Para encontrar archivos que tengan una fecha de modificación de un día atrás, escriba lo siguiente:

      Si queremos archivos a los que se haya accedido hace menos de un día, podemos escribir lo siguiente:

      Para obtener archivos cuya metainformación se haya modificado hace más de 3 días, escriba lo siguiente:

      También existen algunos parámetros complementarios que podemos usar para especificar minutos en vez de días:

      Con esto, se mostrarán los archivos que se modificaron en el último minuto en el sistema.

      Find también puede hacer comparaciones con un archivo de referencia y mostrar los que son más recientes:

      Cómo buscar por propietario y permisos

      También puede buscar archivos por su propietario o propietario del grupo.

      Para hacerlo, utilice los parámetros -user y -group respectivamente. Busque un archivo que sea propiedad del usuario “syslog” ingresando lo siguiente:

      De igual manera, podemos especificar archivos que son propiedad del grupo “shadow” escribiendo lo siguiente:

      También podemos buscar archivos con permisos específicos.

      Si queremos que coincida un conjunto exacto de permisos, utilizamos esta forma:

      Eso relacionará los archivos con los permisos especificados.

      Si queremos especificar algún elemento con al menos esos permisos, puede utilizar esta forma:

      Eso relacionará cualquier archivo que tenga permisos adicionales. En este caso, se relacionaría un archivo con permisos de “744”.

      Cómo filtrar por profundidad

      Para esta sección, crearemos una estructura de directorio en un directorio temporal. Contendrá tres niveles de directorios, con diez directorios en el primer nivel. Cada directorio (incluido el directorio temporal) contendrá diez archivos y diez subdirectorios.

      Cree esta estructura ejecutando los siguientes comandos:

      • cd
      • mkdir -p ~/test/level1dir{1..10}/level2dir{1..10}/level3dir{1..10}
      • touch ~/test/{file{1..10},level1dir{1..10}/{file{1..10},level2dir{1..10}/{file{1..10},level3dir{1..10}/file{1..10}}}}
      • cd ~/test

      No dude en consultar las estructuras de directorios con ls y cd para entender cómo se organizan los elementos. Cuando termine, regrese al directorio de prueba:

      Trabajaremos en cómo obtener archivos específicos con esta estructura. Para comparar, primero probaremos un ejemplo con una búsqueda de nombre normal:

      Output

      ./level1dir7/level2dir8/level3dir9/file1 ./level1dir7/level2dir8/level3dir3/file1 ./level1dir7/level2dir8/level3dir4/file1 ./level1dir7/level2dir8/level3dir1/file1 ./level1dir7/level2dir8/level3dir8/file1 ./level1dir7/level2dir8/level3dir7/file1 ./level1dir7/level2dir8/level3dir2/file1 ./level1dir7/level2dir8/level3dir6/file1 ./level1dir7/level2dir8/level3dir5/file1 ./level1dir7/level2dir8/file1 . . .

      Aparecen muchos resultados. Si canalizamos el resultado en un contador, observamos que hay 1111 resultados en total:

      Output

      1111

      Probablemente, sean demasiados resultados para que le resulte útil en la mayoría de los casos. Intentemos reducirlo.

      Puede especificar la profundidad máxima de la búsqueda en el directorio de búsqueda de nivel superior:

      • find -maxdepth num -name query

      Para encontrar “file1” solo en los directorios de “level1” y superiores, puede especificar una profundidad máxima de 2 (1 para el directorio de nivel superior y 1 para los directorios de level1):

      • find -maxdepth 2 -name file1

      Output

      ./level1dir7/file1 ./level1dir1/file1 ./level1dir3/file1 ./level1dir8/file1 ./level1dir6/file1 ./file1 ./level1dir2/file1 ./level1dir9/file1 ./level1dir4/file1 ./level1dir5/file1 ./level1dir10/file1

      Esa lista es mucho más manejable.

      También se puede especificar un directorio mínimo si sabe que todos los archivos existen a partir de cierto punto en el directorio actual:

      • find -mindepth num -name query

      Podemos utilizarlo para encontrar solo los archivos al final de las ramas de los directorios:

      • find -mindepth 4 -name file

      Output

      ./level1dir7/level2dir8/level3dir9/file1 ./level1dir7/level2dir8/level3dir3/file1 ./level1dir7/level2dir8/level3dir4/file1 ./level1dir7/level2dir8/level3dir1/file1 ./level1dir7/level2dir8/level3dir8/file1 ./level1dir7/level2dir8/level3dir7/file1 ./level1dir7/level2dir8/level3dir2/file1 . . .

      Una vez más, debido a nuestra estructura de directorio con ramificaciones, obtendremos un gran número de resultados (1000).

      Puede combinar los parámetros de profundidad min y max para centrarse en un rango más pequeño:

      • find -mindepth 2 -maxdepth 3 -name file

      Output

      ./level1dir7/level2dir8/file1 ./level1dir7/level2dir5/file1 ./level1dir7/level2dir7/file1 ./level1dir7/level2dir2/file1 ./level1dir7/level2dir10/file1 ./level1dir7/level2dir6/file1 ./level1dir7/level2dir3/file1 ./level1dir7/level2dir4/file1 ./level1dir7/file1 . . .

      Cómo ejecutar y combinar comandos find

      Puede ejecutar un comando auxiliar arbitrario en todo lo que se encuentre con find mediante el uso del parámetro -exec. Eso se invoca de la siguiente manera:

      • find find_parameters -exec command_and_params {} ;

      El {} se utiliza como un marcador de posición para los archivos que se encuentren con find. El ; se utiliza para que find sepa dónde termina el comando.

      Por ejemplo, podríamos encontrar los archivos en la sección anterior que tenían 644 permisos y modificarlos para que tengan 664 permisos:

      • cd ~/test
      • find . -type f -perm 644 -exec chmod 664 {} ;

      Luego, podríamos cambiar los permisos del directorio de esta manera:

      • find . -type d -perm 755 -exec chmod 700 {} ;

      Si desea encadenar diferentes resultados, puede usar los comandos -and o -or. Si se omite, se asume el comando -and.

      • find . -name file1 -or -name file9

      Cómo encontrar archivos utilizando Locate

      Una alternativa a utilizar find es el comando locate. A menudo, este comando es más rápido y puede realizar una búsqueda en todo el sistema de archivos con facilidad.

      Puede instalar el comando en Debian o Ubuntu con apt:

      En CentOS, utilice dnf en su lugar:

      La razón por la que locate es más rápido que find es porque utiliza una base de datos de los archivos en el sistema de archivos.

      Normalmente, la base de datos se actualiza una vez al día con una secuencia de comandos de Cron, pero puede actualizarla de forma manual escribiendo lo siguiente:

      Ejecute ese comando ahora. Recuerde que la base de datos siempre debe estar actualizada si desea encontrar archivos recientemente adquiridos o creados.

      Para encontrar archivos con locate, simplemente utilice la siguiente sintaxis:

      Puede filtrar el resultado de alguna manera.

      Por ejemplo, para solo obtener archivos que contengan la consulta en sí, en vez de obtener cada archivo que contenga la consulta en los directorios en que se encuentre, puede utilizar el -b solamente para buscar el “nombre de base”:

      Para que con locate solo se obtengan resultados que todavía existen en el sistema de archivos (que no se eliminaron entre la última invocación de updatedb y la invocación actual de locate), utilice el indicador -e:

      Para ver estadísticas sobre la información que se catalogó con locate, utilice la opción -S:

      Output

      Database /var/lib/mlocate/mlocate.db: 3,315 directories 37,228 files 1,504,439 bytes in file names 594,851 bytes used to store database

      Conclusión

      Find y locate son buenas maneras de encontrar archivos en su sistema. Le corresponde decidir cuál de estas herramientas es la adecuada para cada situación.

      Find y locate son comandos potentes que se pueden reforzar combinándolos con otras utilidades mediante canalizaciones. Experimente con filtros utilizando comandos como wc, sort y grep.



      Source link