Portál AbcLinuxu, 15. července 2025 21:28


Dotaz: Jak na export funkci a proměnných

26.10.2014 23:38 Marek
Jak na export funkci a proměnných
Přečteno: 191×
Odpovědět | Admin
Ahoj, můžete mi prosím někdo objasnit funkci "export" používanou ve scriptech bash? nějak to nechápu.

Ve scriptu /home/a.sh nastavím
export function test () {..}
spustím v něm další script
/home/b.sh || exit 1;
a když chci zavolat exportovanou funkci tak to nejde. Děkuji
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jendа avatar 26.10.2014 23:50 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak na export funkci a proměnných
Odpovědět | | Sbalit | Link | Blokovat | Admin
Export exportuje do dětí, ne do rodiče. Nejspíš chceš udělat . /home/b.sh nebo source /home/b.sh.
Jendа avatar 27.10.2014 15:44 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak na export funkci a proměnných
Špatně jsem to pochopil.

Exportování funkcí bylo po shellshocku zakázáno, ale nefunguje mi to ani na starém systému.
27.10.2014 11:24 Semo | skóre: 45 | blog: Semo
Rozbalit Rozbalit vše Re: Jak na export funkci a proměnných
Odpovědět | | Sbalit | Link | Blokovat | Admin
$ cat a.sh
#!/bin/bash
test() { echo aaa; }
export test
~/b.sh || exit 1
echo aaa

$ cat b.sh
#!/bin/bash
echo bbb
beh:
~/a.sh
bbb
aaa
Mne to funguje. Teda az na ten zapis exportu. Syntakticky spravny zapis je podla mna iny, nez mas ty.
If you hold a Unix shell up to your ear, you can you hear the C.
Jendа avatar 27.10.2014 15:44 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jak na export funkci a proměnných
Já jsem otázku špatně pochopil.

Ty voláš tu funkci test() (mimochodem to je ale nápad pojmenovávat funkce tak, aby kolidovaly s existujícím programem) kde ve skriptu b.sh?
28.10.2014 18:29 Delaunay | skóre: 17 | blog:
Rozbalit Rozbalit vše Re: Jak na export funkci a proměnných
Odpovědět | | Sbalit | Link | Blokovat | Admin
function test () {..}
export -f test

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.