Ziednodušenie skryptu
mám takúto časť skryptu a potreboval by som jej zápis nejako skrátit:
.........
if [ "`grep "RV370" $POMF`" != "" ] || ...........atď vela krát [ ..... ] || [ "`grep "RV380" $POMF`" != "" ]; then
echo "ok"
.......
ziednodušiť to potrebujem najme kvoli tomu že časti RVxxx budú postupťe pribúdať a celé sa to stáva neprehladné keď sú tam tie hranaté zátvorky....
ďakujem
tomolc
Pre pridávanie komentárov sa musíte prihlásiť.
napr. grep 'RV[\d{3}]' $POMF
subor /usr/share/hwdata/pci.ids poznas, lspci dokaze vypisat aj numericke identifikatory zariadenie. bude to jednoduchsie a cistejsie.
prímam akékolvek konkrétne návrhy...
tomolc
ak to pomôže tak tu sú oba skrypty:
http://disk.jabbim.cz/tomolc@jabbim.sk/rootcopy.tar.gz
Takže mi to dosť ulahčíš keď mi napíšeš priamo ako to má byť. Ak máš čas a nezaťaží ťa to tak to prosímťa vyskúšaj.
tomolc
tomolc
(príkaz grep poznám "z videnia" jeho parametre nepoznám)
if egrep -q "RV370|RV380|RVxxx" $POMF ; then echo "OK" ; fi
takze ten egrep predsa len vyhrava na plnej ciare :-)
Z toho čo ste napísali som postavil toto:
(na overenie funkčnosti)
POMF=`mktemp`
/sbin/lspci -v > $POMF
if [ "`egrep 'RV[\d{3}]|RV[\d{4}]|RV[\d{5}]|R[\d{3}]|R[\d{4}]|R[\d{5}]' $POMF`" != "" ]; then
echo "ok"
else
echo "ko"
fi
Pozeral som aj man grep ale moc múdry som z toho nebol.....
čo znamená ten parameter -q? Keď som ho tam dal tak mi to nefungovalo - vypisovalo to ko aj keď by malo ok (RV[\d{3}] je splnené)
este kratsie
a ten parameter -q ( egrep -q ) vo wolf09 reakcii?
tomolc