Skriptík v shellu pomocí awk

Re: Skriptík v shellu pomocí awk
« Odpověď #15 kdy: 26. 03. 2010, 09:43:32 »
Dobrá já si s tím nějak pohraji........a chtěl jsem se zeptat jak udělám abych navázal na můj skript:
ypcat passwd | awk -F: '$3<=30000 || $1 !~ /[a-zA-Z]\{6\}[1-9]/'
který mi vybere z ypcat uživatele s UID<=30000 nebo uživatele, kterým neodpovídá vzor, tím Váším, který z tohoto výpisu má pomocí toho vašeho skriptu, u těch uživatelů, kteří neodpovídají vzoru, tak prohodit tu cestu. A na závěr bych měl spočítat řádky, což udělám přes
 awk 'END { print "Pocet radku je: " NR}'
a ještě bych měl spočít celkový počet záměn, ale to vůbec nevím jak se udělá??


deadmail

Re: Skriptík v shellu pomocí awk
« Odpověď #16 kdy: 26. 03. 2010, 17:49:27 »
Dobrá já si s tím nějak pohraji........a chtěl jsem se zeptat jak udělám abych navázal na můj skript, který mi vybere z ypcat uživatele s UID<=30000 nebo uživatele, kterým neodpovídá vzor, tím Váším, který z tohoto výpisu má pomocí toho vašeho skriptu, u těch uživatelů, kteří neodpovídají vzoru, tak prohodit tu cestu. A na závěr bych měl spočítat řádky a ještě bych měl spočít celkový počet záměn, ale to vůbec nevím jak se udělá??

Nejako takto
Kód: [Vybrat]
cat /etc/passwd | awk 'BEGIN {OFS=FS=":"; pocet=0}
($3<=30000) || ($1 !~ /[a-zA-Z]\{6\}[1-9]/) {if ($6 ~ "^/home/") {$6=gensub("/home/([^/]+)", "/\\1/home", "", $6);pocet++}; print}
END {print "Pocet radku je: " NR; print "Pocet zamen: " pocet}'
?

Re: Skriptík v shellu pomocí awk
« Odpověď #17 kdy: 26. 03. 2010, 20:00:23 »
Ano, perfektní, děkuji Vám moc!