Portál AbcLinuxu, 10. května 2025 22:15
#obsah souboru /tmp/go read -p "Váš mail:" MAIL #funkce start start () { ... /tmp/go ... } #spustím funkci start a chyby přesměruji do souboru /tmp/error.log start 2>/tmp/error.logKdyž spustím funkce start která spustí soubor /tmp/go, tak na obrazovce nic neuvidím ale v souboru tmp/error.log mám napsáno Váš mail:. Co je špatně? To přesměrování 2>? Má to být jinak? Nebo se musí zrušit to přesměrování před spuštěním /tmp/go? Díky za pomoc
/tmp
na samosteatnej partícii, je z veľkou pravdepodobnosťou mountovaná ako noexec
.
#!/bin/sh read -p "Foo: " BAR start () { echo foobar } start 2> /tmp/foo.logse chova podle ocekavani..
#!/bin/sh get_mail() { echo -n "Zadej mail: "; read MAIL } start() { get_mail if ! [ -n "$MAIL" ]; then echo "prazdny mail.." 1>&2; fi } start 2>> foo.log
Jiste, ze muzes spoustet souborno ale jak pořád nevím
ale proc, kdyz muzes zavolat funkci, nebo volat prikaz read primo..No jak jsem již psal, v té funkci start se ty scripty mění, jednou je to read jindy zase restart, jindy backup atd..
get_mail.sh #!/bin/sh echo -n "Zadej mail: "; read MAILADDR export MAILADDR main.sh #!/bin/sh start() { . get_mail.sh if [ -z "$MAILADDR" ]; then echo "prazdny mail.." 1>&2; fi } start 2>> foo.log
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.