Cola de PowerShell: obtiene las últimas líneas del archivo
Muy a menudo, los administradores tienen la tarea de monitorear archivos de registro como el archivo de registro de Windows, el registro de IIS, el registro de errores, el archivo de registro del firewall y obtener las últimas x líneas del archivo. En PowerShell, el parámetro tail del cmdlet Get-Content es el comando tail equivalente de Unix que se utiliza para monitorear el archivo y obtener las últimas líneas del archivo.
Con PowerShell, los administradores pueden obtener fácilmente la cola del archivo mediante el cmdlet Get-Content que tiene un parámetro de cola.
En PowerShell, el parámetro tail especifica el número de líneas desde el final del archivo. También puedes usar el alias final Last
Entendamos el uso de ejemplos de cola de Get-Content para leer el final del archivo, un archivo puede ser un archivo de registro, un registro de eventos de Windows, un registro de firewall o cualquier otro archivo.
Consejo interesante: ¡Cómo obtener certificados usando PowerShell!
Usando la cola de PowerShell del registro de eventos de Windows
Para obtener las últimas 10 líneas del registro de eventos de Windows, utilice el siguiente parámetro de cola Get-Content.
Get-Content "C:\PowerShell\EventLog_Setup.txt" -tail 3El resultado del comando get-content tail anterior muestra las últimas 3 líneas del archivo.
Cola de PowerShell: muestra la última línea del archivo
Para obtener la última línea del archivo, use el parámetro tail con el valor 1. Aquí -tail 1 muestra la línea inferior del archivo
Get-Content "C:\PowerShell\EventLog_Setup.txt" -tail 1Consejo interesante: ¿Conoce el equivalente del comando cat en Windows?
Obtenga la cola del archivo grande y expórtelo a csv
A menudo, los administradores necesitan extraer algunas líneas del archivo de registro grande para analizar los datos del registro.
Para obtener la cola de las últimas 50 líneas de un archivo grande y exportarlo a un archivo csv, use el siguiente comando
Get-Content "C:\PowerShell\EventLog_Setup.txt" -tail 50 | Out-File -FilePath "C:\PowerShell\output.csv"En el comando anterior, el parámetro Get-Content cmdlet -tail de PowerShell obtiene las últimas 50 líneas del código. Usando el operador de tubería, pasó las líneas extraídas a Out-File para exportarlas a un archivo csv.
Consejo interesante: ¡Usar PowerShell para obtener la primera línea del archivo!
Usando el parámetro de espera para mostrar una nueva línea
Otro uso popular del parámetro tail es obtener las últimas líneas del archivo. Al utilizar el parámetro -wait del cmdlet Get-Content, mantiene el archivo abierto después de que todas las líneas existentes se envían a la consola y observa la nueva línea cada segundo.
Get-Content "C:\PowerShell\iislog.txt" -waitpuedes detener la espera usando Ctrl + C
Consejo interesante: ¡Aprenda cómo obtener un usuario usando el nombre principal de usuario!
Conclusión
En la publicación de blog anterior, expliqué cómo obtener las últimas líneas del archivo usando el parámetro de cola Get-Content. En PowerShell, el parámetro tail es muy útil para obtener un número específico de líneas del archivo.
Puede encontrar más temas sobre los comandos de PowerShell Active Directory y los conceptos básicos de PowerShell en la página de inicio de ShellGeek.