Hirdetés

Aktív témák

  • tocsa

    senior tag

    Sziasztok!

    Kovetkezo a problemam, nem talaltam ra megoldast a bash manualban.
    script fugvenynek szeretnek atadni ertekekbol allo listat, majd a
    fuggvenyben szeretnek ezen a listan vegigmenni.

    A gond az, hogy ahogy atadodnak a parameterek, a fuggvenyen belul $1
    erteke nem $IPCIMEK1 lesz, tehat nem az egesz elso lista, hanem csak
    ''1.2'', mig $2 erteke ''1.3'' lesz (az elso lista masodik eleme), es nem a
    masodik lista. Tehat a lista nem jut at egyben, ''feldarabolodik''. Nemtom
    ertheto-e? Ha nem, akkor meg tovabb magyarazom.

    Pelda:

    IPCIMEK1 = ''1.2 1.3''
    IPCIMEK2 = ''1.4 1.5''

    function fuggveny()
    {
    for TEMP1 in $1 ; do
    for TEMP2 in $2 ; do
    iptables $TEMP1 $TEMP2
    }


    fuggveny IPCIMEK1 IPCIMEK2


    en ezeket az utasitasokat szeretnem kiadni ennek segisegevel:
    iptables 1.2 1.4
    iptables 1.2 1.5
    iptables 1.3 1.4
    iptables 1.3 1.5

    Termeszetesen tekintsunk el attol, hogy az iptables meghivasa igy nem jo,
    es az ip cimek nem kettaguak. A peldat nem akartam elbonyolitani.


    Kifejezetten a lista tipusu parameterek atadasanak problemaja erdekelne.
    Tudom, hogy lehetne probalkozni tombok kepzesevel es a tombnevet atadni
    parameterkent, vagy esetleg temporalisan fajlokat irni a listakbol, es a
    fajnevet atadni, de az eredeti problemara fokuszalnek.


    Udv!

    Acer Predator Helios 500 Ryzen, Samsung 960 Pro NVMe + GeChic 15.6" kulso monitor a mobil irodahoz

  • tocsa

    senior tag

    válasz tocsa #1 üzenetére

    Aaaa!
    Fejbol irtam.

    Szoval mindket forciklus vegen van done.
    Masreszt a fuggvenyhivas igy nez ki:

    fuggveny $IPCIMEK1 $IPCIMEK2

    Probalkoztam egyebkent

    fuggveny IPCIMEK1 IPCIMEK2

    hivassal is, es akkor fuggveny ez lenne:

    function fuggveny()
    {
    for TEMP1 in $$1 ; do
    for TEMP2 in $$2 ; do
    iptables $TEMP1 $TEMP2
    }

    azonban a bash meghasal a $$1-re (a dupla dollarra). Nem megy a ${$1}, meg semmifele mas dupla feloldas.

    Udv!



    Acer Predator Helios 500 Ryzen, Samsung 960 Pro NVMe + GeChic 15.6" kulso monitor a mobil irodahoz

  • tocsa

    senior tag

    válasz tocsa #2 üzenetére

    Hory-nál a pont.

    A megoldás:

    fuggveny ''$IPCIMEK1'' ''$IPCIMEK2''

    Valami nincs rendben az otthoni gépen, de most nem tom ott is kipróbálni.

    Acer Predator Helios 500 Ryzen, Samsung 960 Pro NVMe + GeChic 15.6" kulso monitor a mobil irodahoz

Aktív témák