Si quiero tail un archivo de texto de 25 GB, hace la tail comando leer todo el archivo?
Dado que un archivo puede estar disperso en un disco, me imagino que tiene que hacerlo, pero no entiendo bien esos aspectos internos.
Respuesta aceptada:
No, tail no lee todo el archivo, busca hasta el final y luego lee los bloques hacia atrás hasta alcanzar el número esperado de líneas, luego muestra las líneas en la dirección correcta hasta el final del archivo y posiblemente permanece monitoreando el archivo si el -f se utiliza la opción.
Tenga en cuenta, sin embargo, que tail no tiene más remedio que leer todos los datos si se proporciona una entrada no buscable, por ejemplo, al leer de una tubería.
De manera similar, cuando se le pide que busque líneas que comiencen desde el principio del archivo, use el tail -n +linenumber sintaxis o tail +linenumber opción no estándar cuando se admite, tail obviamente lee todo el archivo (a menos que se interrumpa).