estoy tomando un curso de introducción a UNIX y tiene una pregunta tarea que sigue:¿Cómo contar todos los archivos legibles en Bash?
¿Cuántos archivos en la pregunta anterior son archivos de texto? Un archivo de texto es cualquier archivo que contenga contenido legible por humanos. (PREGUNTA DE TRUCO. Ejecute el comando de archivo en un archivo para ver si el archivo es de texto o binario. Si simplemente cuenta el número de archivos con la extensión
.txt
, no obtendrá puntos para esta pregunta)
La pregunta anterior simplemente preguntaba cuántos archivos regulares había, lo cual era fácil de averiguar haciendo find . -type f | wc -l
.
Solo estoy teniendo problemas para determinar qué es el "contenido legible por humanos", ya que supongo que significa algo además de binario/ensamblado, pero pensé que eso es lo que muestra -type f
. ¿Tal vez eso es lo que quiso decir el profesor al decir "pregunta engañosa"?
Esta pregunta tiene un seguimiento posterior que también pregunta "¿Qué archivos de texto contienen la cadena" csc "en cualquier combinación de mayúsculas y minúsculas?". Obviamente, "texto" se refiere a mucho más que a los archivos .txt
, ¡pero tengo que resolver la primera pregunta para determinarlo!
No, 'find -type F' excluye directorios, ficheros de dispositivos, etc. ("especulación archivos ial "), es decir, objetos del sistema de archivos que no sean puros. No examina el contenido de los archivos en absoluto, solo la información de tipo en la entrada del directorio (inode). Unix no hace ninguna distinción entre archivos "binarios" y "texto" (y para este cabezal Unix, cualquier intento de definir dicha distinción entra en una pendiente resbaladiza). – tripleee