Otak
(Otak)
15 Sierpień 2018 17:40
#1
Chcę przypisać wynik polecenia do zmiennej, np. jak w poniższej linijce.
#!/bin/bash
a=sed -n -f regex 1 | awk '{print $3}'
gdzie:
regex - plik z wyrazeniami regularnymi,
1 - plik który przeszukuję poleceniem sed.
W/w polecenie zwraca serię adresów IP i zapisuje je w zmiennej a.
Jak ze zmiennej a wydobyć każdy pojedyńczy adres IP, jak je policzyć?
Jak jażdy adres IP zapisać automatycznie do tablicy?
Czy muszę w skrypcie Basha dawać polecanie systemowe w znakach przypominającyh pojdeyńcze cudzysłowy``?
Dzięki za odpowiedzi
Otak
(Otak)
15 Sierpień 2018 17:58
#3
@wojtekadams - możesz podać przykład do pkt1 oraz pkt2 jak to zrobić?
marcin82
(marcin82)
15 Sierpień 2018 18:02
#4
Nie musisz, można tak - jest bardziej czytelnie:
a="$(sed -n -f regex 1 | awk '{print $3}')"
Lektura:
http://tldp.org/LDP/abs/html/arrays.html
1 polubienie
declare -a arr=("ip_1" "ip_2" "ip_3")
echo "zawartosc tablicy: ${arr[@]}"
echo "wielkosc tablicy: ${#array[@]}"
for i in "${arr[@]}"
do
echo "IP: $i"
done
do tablicy dodajesz tak:
arr+=("$i")
Proste
Otak
(Otak)
17 Sierpień 2018 15:09
#6