BASH – Dividir variable por delimitador especifico.-

#!/usr/bin/env bash
readonly connections="
                      192.168.1.4/24|tcp|22
                      192.168.1.4/24|tcp|53
                      192.168.1.4/24|tcp|80
                      192.168.1.4/24|tcp|139
                      192.168.1.4/24|tcp|443
                      192.168.1.4/24|tcp|445
                      192.168.1.4/24|tcp|631
                      192.168.1.4/24|tcp|5901
                      192.168.1.4/24|tcp|6566
"
function set_connections()
{
    local range proto port
    for fields in ${connections[@]}
    do
            IFS=$'|' read -r range proto port <<< "$fields"
            echo "$range - $proto - $port"
    done
}
set_connections

Al ejecutar este SCRIPT obtendremos el siguiente resultado. En esta ocasión se definió los valores dentro de una variable, también se puede definir un ARRAY o leer directamente de un archivo. Los usos quedan a la imaginación.-

192.168.1.4/24 - tcp - 22
192.168.1.4/24 - tcp - 53
192.168.1.4/24 - tcp - 80
192.168.1.4/24 - tcp - 139
192.168.1.4/24 - tcp - 443
192.168.1.4/24 - tcp - 445
192.168.1.4/24 - tcp - 631
192.168.1.4/24 - tcp - 5901
192.168.1.4/24 - tcp - 6566
Esta entrada fue publicada en Unix - Linux. Guarda el enlace permanente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.