8 formas de contar el número de líneas

8 formas de contar el número de líneas de un archivo, en Linux.

Es algo típico de linux, que podamos hacer una misma tarea de diferentes formas. Esto puede parecer una simple anécdota, pero te equivocas… pues cada herramienta o comando aún obteniendo el mismo resultado, pueden tener un fin totalmente diferente.

En el artículo de hoy veremos algo simple, pero muy útil para según que trabajos, 8 formas diferentes de contar el número de líneas de un archivo, en nuestro sistema linux.

 

8 formas de contar el número de líneas

Contar las lineas de un archivo

Contar las líneas de un archivo

Para ver como contar el número de líneas, tomamos como ejemplo un script bash específico para limpiar servidores Apache, que tiene 42 líneas. Lo vemos.

#!/bin/bash
# by Sergio G.B. - SoloLinux.es
# scripts bash imprescindibles de un sysadmin linux
#
echo "<---------------------------------------------------------->"
echo "<---------------------------------------------------------->"
echo "Comprobando estado de memoria"
free
echo "OK - Comprobacion completada"
echo "<---------------------------------------------------------->"

sleep 2s; echo “Limpieza de memoria cache y swap“;
echo "<---------------------------------------------------------->"

sleep 2s; echo "Deshabilitando HTTP"
killall -KILL httpd
echo "OK - Http deshabilitado"
echo "<---------------------------------------------------------->"

sleep 5s; echo "Deshabilitando Swap"
swapoff -a
echo "OK - Swap deshabilitado"
echo "<---------------------------------------------------------->"

sleep 5s; echo "Liberando page-caches, dentries e inodes"
sync;sysctl -w vm.drop_caches=3;sync
echo "OK - Server liberado"
echo "<---------------------------------------------------------->"

sleep 2s; echo "Habilitando la Swap"
swapon -a
echo "OK - Swap habilitado"
echo "<---------------------------------------------------------->"

sleep 2s; echo "Habilitando HTTP"
service httpd start
echo "OK - Http habilitado"
echo "<---------------------------------------------------------->"

sleep 2s; free
echo ".....MANTENIMIENTO CONCLUIDO....."
echo "<---------------------------------------------------------->"
echo "<---------------------------------------------------------->"

Al script lo hemos llamado «limpiar.sh», así que vamos a ver los ejemplos de uso.

 

Comando wc -l
wc -l limpiar.sh

En este caso, la salida nos indica el número de líneas y el nombre del archivo.

sergio@sololinux:~$ wc -l limpiar.sh
42 limpiar.sh
sergio@sololinux:~$

 

Comando wc -l <
wc -l < limpiar.sh

Tan solo el número de líneas del archivo.

sergio@sololinux:~$ wc -l < limpiar.sh
42
sergio@sololinux:~$

 

Comando cat archivo | wc -l
cat limpiar.sh | wc -l

Está claro que con el comando cat podemos hacer de todo.

sergio@sololinux:~$ cat limpiar.sh | wc -l
42
sergio@sololinux:~$

 

Comando awk ‘END {print NR}’ archivo
awk 'END {print NR}' limpiar.sh

Imagen de ejemplo.

Imprimir el numero de lineas del archivo

Imprimir el número de líneas del archivo

 

Comando sed -n ‘$=’ archivo
sed -n '$=' limpiar.sh

El comando sed también nos ayuda a lograr nuestro objetivo.

sergio@sololinux:~$ sed -n '$=' limpiar.sh
43
sergio@sololinux:~$

 

Comando grep -e «$» -c archivo
grep -e "$" -c limpiar.sh

Ejemplo del comando grep.

sergio@sololinux:~$ grep -e "$" -c limpiar.sh
43
sergio@sololinux:~$

 

Comando grep -e «^» -c archivo
grep -e "^" -c limpiar.sh

Otra opción del comando grep.

sergio@sololinux:~$ grep -e "^" -c limpiar.sh
43
sergio@sololinux:~$

 

Comando nl archivo | tail -n1
nl limpiar.sh | tail -n1

Este comando nos indica el número total de líneas, incluyendo los espacios. También nos imprime los caracteres de la última línea.

sergio@sololinux:~$ nl limpiar.sh | tail -n1
    36	echo "<---------------------------------------------------------->"
sergio@sololinux:~$

 

Nota del autor: Podrás observar que algunos comandos pueden variar el resultado, este efecto es debido a la forma de tratar las líneas y los espacios en blanco.

 

Canales de Telegram: Canal SoloLinux – Canal SoloWordpress

Espero que este artículo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales.

Chat de SoloLinux en Telegram

 

Agregar comentario

1 logo sololinux

Suscríbete a SoloLinux

Recibe todos los nuevos artículos es tu correo electrónico

You have Successfully Subscribed!

Ir al contenido