Necesita ayuda para comprender cómo funciona este comando de búsqueda

1

Soy un principiante en OS X y creo que este comando hará una lista de todos los archivos y subcarpetas de carpetas específicas

find /Volumes/Documents/ -exec stat -f "%N %Sm" {} + >~/Desktop/test.txt

No sé cómo averiguar lo que realmente hace esto.

    
pregunta user3171796 27.03.2014 - 10:07

1 respuesta

2

El comando que publicaste tiene dos partes

  • find /Volumes/Documents/ -exec stat -f "%N %Sm" {} +
  • >~/Desktop/test.txt

La segunda parte es más fácil de explicar, simplemente escribe toda la salida de la primera en un archivo llamado test.txt que se almacena en su escritorio. Si deja esa parte fuera, el resultado de find se escribirá directamente en la ventana de su Terminal.

La primera parte es el comando find real. Una llamada a find básicamente obtiene dos tipos de parámetros

  • uno o varios caminos que actúan como punto de partida para la búsqueda ( /Volumes/Documents/ en su caso)
  • una o varias expresiones, también conocidas como "comandos de búsqueda", que se aplican a todos los archivos / carpetas encontrados

Una versión simple se vería como find /Volumes/Documents/ -print , que solo imprime todos los archivos / carpetas encontrados.

En tu ejemplo, la parte de la expresión es un poco más elaborada:

  • -exec ejecuta un comando sobre los resultados de encontrar ( stat -f "%N %Sm" en realidad)

  • stat proporciona información sobre un archivo.

  • La opción -f para stat muestra información usando un formato específico.

  • %N %Sm es el formato utilizado por -f .

    • % significa una cadena de formato.

    • N significa imprimir el nombre del archivo.

    • Sm significa imprimir la fecha modificada para el archivo.

  • {} + se reemplaza por la mayor cantidad de archivos encontrados / posible en cada llamada a stat

Para obtener más información sobre cómo comprender los comandos, consulte la página del manual de find y stat .

    
respondido por el grg 27.03.2014 - 19:24

Lea otras preguntas en las etiquetas