Uso del comando seq con ejemplos.
El comando seq es una herramienta capaz de imprimir una secuencia de números naturales, que pueden ser transmitidos a otros scripts o aplicaciones.
Al combinar el comando seq con otros comandos, podemos generar secuencias numéricas, bucles, y varias opciones más. En este articulo conocemos este comando, muy fácil de usar y de entender.
Uso del comando seq con ejemplos
Seq viene de forma predeterminada en todas las distribuciones linux, puedes verificar la versión que tienes instalada ejecutando lo siguiente.
seq --version
ejemplo de salida…
sololinux ~ # seq --version seq (GNU coreutils) 8.25 Copyright © 2016 Free Software Foundation, Inc. Licencia GPLv3+: GPL de GNU versión 3 o posterior <http://gnu.org/licenses/gpl.html>. Esto es software libre: usted es libre de cambiarlo y redistribuirlo. No hay NINGUNA GARANTÍA, hasta donde permite la ley. Escrito por Ulrich Drepper. sololinux ~ #
Como puedes comprobar en la siguiente linea la sintaxis de seq es muy simple.
seq [options] specification
Ejemplos básicos de seq
1- Imprimir una secuencia que empiece en 1 hasta un numero definido, por ejemplo el 7.
seq 7
ejemplo de salida…
sololinux ~ # seq 7 1 2 3 4 5 6 7 sololinux ~ #
2- Definir el primer y ultimo numero de la secuencia. En el ejemplo comenzamos por 3, y concluimos con 8.
seq 3 8
ejemplo se salida…
sololinux ~ # seq 3 8 3 4 5 6 7 8 sololinux ~ #
3- Para generar una secuencia aritmética definida, usamos la siguiente sintaxis.
seq [start] [incr] [stop]
En el siguiente ejemplo comenzamos la secuencia en 5, e incrementamos de tres en tras hasta lograr el numero 15. Como el numero 15 no hace la suma, se imprimirá el más cercano (en este caso el 14).
seq 5 3 15
ejemplo se salida…
sololinux ~ # seq 5 3 15 5 8 11 14 sololinux ~ #
4- Los valores también pueden ser negativos, incluso decimales con coma flotante.
seq 14 -3 5
ejemplo se salida…
sololinux ~ # seq 14 -3 5 14 11 8 5 sololinux ~ #
Formatear la salida del comando seq
Como has podido comprobar, en los ejemplos anteriores el resultado se imprime con saltos de linea. Ahora vemos como formatear la salida para que nos ofrezca otras opciones de impresión.
1- Impresión de secuencia numérica separada por barra vertical. Utilizamos la opción -s.
seq -s "|" 12
ejemplo de salida…
sololinux ~ # seq -s "|" 12 1|2|3|4|5|6|7|8|9|10|11|12 sololinux ~ #
2- La opción -f nos permite utilizar el estilo printf con los caracteres E, e, f, G, g, %.
seq -f '##%g##' 1 7
ejemplo de salida…
sololinux ~ # seq -f '##%g##' 1 7 ##1## ##2## ##3## ##4## ##5## ##6## ##7## sololinux ~ #
otro ejemplo de salida…
sololinux ~ # seq -f %f 1 7 1,000000 2,000000 3,000000 4,000000 5,000000 6,000000 7,000000 sololinux ~ #
3- Con -w podemos alinear la secuencia numérica agregando ceros.
seq -w 5 12
ejemplo de salida…
sololinux ~ # seq -w 5 12 05 06 07 08 09 10 11 12 sololinux ~ #
Integrar seq en un bash loop
El comando seq también se puede utilizar para hacer bucles en scripts bash. Creamos un sencillo script a modo de ejemplo.
nano demo-seq.sh
Insertamos lo siguiente…
#!/bin/bash for i in $(seq 4 0.5 8) do echo "El numero es $i" done
Guarda el archivo, cierra el editor, y lo ejecutas.
Ejemplo de salida…
sololinux # bash demo-seq.sh El numero es 4,0 El numero es 4,5 El numero es 5,0 El numero es 5,5 El numero es 6,0 El numero es 6,5 El numero es 7,0 El numero es 7,5 El numero es 8,0 sololinux #
Ayuda del comando seq
Para imprimir la ayuda en el idioma predefinido de tu sistema, ejecutamos –help.
seq --help
Comando seq –help
Canales de Telegram: Canal SoloLinux – Canal SoloWordpress
Espero que este articulo 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.