Portál AbcLinuxu, 18. července 2025 12:18
Takže první krok(pořád vim jak): Zjištění aktuální IP ifconfig eth1|head -2|tail -1|cut -d: -f2|cut -d\ -f1 > /var/test/vystup1
Druhý krok(pořád vim jak): Zjištění aktuálně nastavené IP v IPTABLES scriptu cat /etc/init.d/fw | grep "INET_IP=" | awk -F \" '{print $2}' > /var/test/vystup2
Třetí krok(teď to přinde): Porovnání jestli oba výstupy souhlasí a pokud ne tak proveď akci No a stim už nevim jak dál >.< Respektive dokážu porovnat vystup1 s vystup2 Ale uz nejsem schopnej, pokud to nesouhlasí, nahradit "aktuálně přidělenou IP" "IP ve scriptu".
Zkoušel jsem: sed 's/"cat soubor_1 | grep "INET_IP=" | awk -F \" '{print $2}'"/"ifconfig eth1|head -2|tail -1|cut -d: -f2|cut -d\ -f1"/g' < /etc/init.d/fw...ale nejde to... ): ... chyba: sed: -e výraz #1, znak 52: unterminated `s' command
Zkousel jsem i : pc:~# sed 's/"cat /var/test/vystup2"/"cat /var/test/vystup1"/g' < /etc/init.d/fw sed: -e výraz #1, znak 13: unknown option to `s' pc:~# sed 's/cat /var/test/vystup2/cat /var/test/vystup1/g' < /etc/init.d/fw sed: -e výraz #1, znak 12: unknown option to `s'
Může mi někdo poradit kde jsem zase zapomněl ňákou tečku apod. Případně pokud máte nějakej lepší nápad jak "cat vystup2" nahradit "cat vystup1" v "/etc/init.d/fw" budu moc rád. Už se stim trápim 5 hodin (holt to někomu myslí pomalu)DÍKY
-------------------------------------------------------- Snad to nejni uplně trapnej dotaz... /cry
INET_IP=`ip -o -4 a s dev eth1 | sed 's/.*inet\ \([0-9.]*\)\/.*/\1/'`
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.