Este artículo explica cómo utilizar la herramienta wc para saber el tamaño de una salida de un comando.



Anteriormente demostré cómo utilizar wc para contar la cantidad de líneas o palabras de una salida. Sin embargo, es posible también utilizar wc para contar bytes. Esto permite calcular tamaños.

Deseo conocer el tamaño (expresado en bytes) de la salida de un comando (no el tamaño de un archivo). ¿Cómo es posible medirlo? Veamos directamente un ejemplo:

emi@hal9000:~$ grep ip /etc/protocols
ip	0	IP		# internet protocol, pseudo protocol number
ipencap	4	IP-ENCAP	# IP encapsulated in IP (officially ``IP'')
ipv6	41	IPv6		# Internet Protocol, version 6
ipv6-route 43	IPv6-Route	# Routing Header for IPv6
ipv6-frag 44	IPv6-Frag	# Fragment Header for IPv6
skip	57	SKIP		# SKIP
ipv6-icmp 58	IPv6-ICMP	# ICMP for IPv6
ipv6-nonxt 59	IPv6-NoNxt	# No Next Header for IPv6
ipv6-opts 60	IPv6-Opts	# Destination Options for IPv6
ipip	94	IPIP		# IP-within-IP Encapsulation Protocol
etherip	97	ETHERIP		# Ethernet-within-IP Encapsulation [RFC3378]
ipcomp	108	IPCOMP		# IP Payload Compression Protocol
mpls-in-ip 137	MPLS-in-IP	# MPLS-in-IP [RFC4023]
hip	139	HIP		# Host Identity Protocol

He filtrado un archivo con grep y deseo conocer el tamaño resultante. A tal fin, es posible recurrir a wc con la opción -c la cual permite contar bytes:

emi@hal9000:~$ grep ip /etc/protocols | wc -c
684

Más ejemplos, incluyendo salidas con caracteres multi-byte:

emi@hal9000:~$ echo -n "hola" | wc -c
4
emi@hal9000:~$ echo -n "peña" | wc -c
5

Notar la diferencia en tamaño a causa de los caracteres multibyte como ñ o vocales con tilde:

emi@hal9000:~$ echo -n "peña" | hexdump -C
00000000  70 65 c3 b1 61                                    |pe..a|
00000005
emi@hal9000:~$ echo -n "ñandú" | wc -c
7

Referencias


Tal vez pueda interesarte


Compartí este artículo