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. Los campos obligatorios están marcados con *