Obtenga el archivo más antiguo en el directorio Linux

Obtenga el archivo más antiguo en el directorio Linux
Hay una serie de comandos que se pueden usar para obtener diferentes tipos de información sobre archivos y directorios en un sistema operativo Linux. En este artículo, le mostraremos cómo obtener el archivo más antiguo en un directorio en el sistema operativo Linux utilizando dos comandos diferentes. Para la demostración, usaremos Ubuntu 20.04 LTS. También puede seguir este artículo para cualquier otra distribución de Linux.

Para obtener el archivo más antiguo en un directorio de Linux, usaremos el encontrar y LS dominio. Empecemos.

Método 1

En este método, utilizaremos el comando Find para obtener el archivo más antiguo en el directorio de Linux. Buscar el comando puede buscar archivos y directorios basados ​​en diferentes criterios como la búsqueda por nombre de archivo, tipo, permisos, fecha de creación, fecha de modificación, etc.

Para encontrar el archivo más antiguo en un directorio específico, puede usar el comando Buscar de la siguiente manera:

$ Find -Type F -Printf ' %T+ %P \ n' | ordenar | cabeza -n 1

Desglosemos el comando:

  • encontrar se utiliza el comando para buscar archivos en Linux.
  • es la ruta al directorio donde desea realizar la operación de búsqueda.
  • -tipo F se usa para buscar solo los archivos. Para buscar un directorio, use -tipo D.
  • -printf ' %t+ %p \ n' Imprime la última fecha y hora de modificación del archivo (definido por %t) y la ruta del archivo (definido por %p). El \ n agrega una nueva línea.
  • Ordenar | cabeza -n 1 clasifica los archivos numéricamente y pasa su salida al comando Head que muestra el 1 archivo más antiguo.

Para encontrar el archivo más antiguo en el directorio de inicio (~/) de su sistema, el comando sería:

$ Find ~/ -Type F -Printf ' %T+ %P \ n' | ordenar | cabeza -n 1

Este comando imprimirá el archivo más antiguo en el directorio de inicio de su sistema.

Para encontrar 3 archivos más antiguos en el directorio de inicio, reemplace 1 por 3:

$ Find ~/ -Type F -Printf ' %T+ %P \ n' | ordenar | cabeza -n 3

Este comando imprimirá 3 archivos más antiguos del directorio especificado.

Como ha visto, el comando anterior solo devolvió los archivos más antiguos, no los directorios. Para mostrar el directorio más antiguo en el directorio especificado, use -tipo D en lugar de -tipo F Como se muestra abajo:

$ Find -Type D -Printf ' %T+ %P \ n' | ordenar | cabeza -n 1

Por ejemplo, para encontrar el directorio más antiguo en el directorio de inicio (~/) de su sistema, el comando sería:

$ Find ~/ -Type d -Printf ' %T+ %P \ n' | ordenar | cabeza -n 1

Este comando imprimirá el directorio más antiguo ubicado dentro de su directorio de inicio.

Para encontrar 3 directorios más antiguos en el directorio de inicio, reemplace 1 por 3:

$ Find ~/ -Type d -Printf ' %T+ %P \ n' | ordenar | cabeza -n 3

Este comando imprimirá los 3 directorios más antiguos ubicados dentro del directorio de inicio.

Método 2

En este método, utilizaremos el comando LS para obtener el archivo más antiguo en un directorio de Linux. La salida de este comando incluye tanto archivos como directorios.

Para encontrar el archivo más antiguo en un directorio específico, use cualquiera de las siguientes sintaxis del comando:

$ ls -t | cola -1

o

$ LS -TR | Cabeza -1

Si no especifica la ruta del directorio, el comando mostrará el archivo o subdirectorio más antiguo ubicado dentro de su directorio de terminal actual.

Para encontrar 3 archivos más antiguos en el directorio especificado, use este comando:

$ ls -t | cola -3

o

$ LS -TR | Cabeza -3

Estos comandos mostrarán 3 archivos o directorios más antiguos ubicados dentro del directorio especificado.

Eso es todo lo que hay! En este artículo, cubrimos cómo obtener el archivo más antiguo en el directorio de Linux a través de dos métodos diferentes. Espero que encuentre útil este artículo!