[perl] filteren op kleur

Pagina: 1
Acties:

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Als ik bijv op mijn linux bak een commando uitvoer waar de output van in kluer is,
hoe kan ik dan met perl daar op filteren.

de output is bijv.
code:
1
2
3
4
5
6
7
[ebuild    U ] sys-apps/iptables-1.2.6a-r1 to /
[ebuild    U ] sys-apps/shadow-4.0.2-r5 to /
[ebuild  N   ] sys-apps/pam-login-3.6-r1 to /
[ebuild    U ] sys-apps/util-linux-2.11o-r3 to /
[ebuild    U ] sys-devel/libtool-1.4.1-r7 to /
[ebuild    U ] sys-libs/gpm-1.19.6 to /
[ebuild    U ] app-editors/vim-6.1-r7 to /

waar dan de U blouw is en de N groen

nu wil ik dat hij alleen de regel met de groene N laat zien

specs : http://specs.tweak.to/7435


  • JayTaph
  • Registratie: Oktober 1999
  • Laatst online: 28-11-2025

JayTaph

Portability is for canoes.

(jarig!)
Zelfs al zou het (makkelijk) kunnen, hoe doe je dat op een terminal zonder kleurondersteuning? :+

Ik weet niet waar je het voor nodig hebt, maar misschien dat je files en directories van elkaar wilt scheiden ofzo? Dan kan het namelijk anders.

Yo dawg, I heard you like posts so I posted below your post so you can post again.


  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
de N staat voor nieuw en de U staat voor upgrade
en daar zou ik graag onderscheid tussen willen zien

specs : http://specs.tweak.to/7435


  • JayTaph
  • Registratie: Oktober 1999
  • Laatst online: 28-11-2025

JayTaph

Portability is for canoes.

(jarig!)
Dan zou ik gewoon op de N en de U gaan zoeken (via een regex bijvoorbeeld)

Yo dawg, I heard you like posts so I posted below your post so you can post again.


Verwijderd

Op woensdag 29 mei 2002 20:59 schreef dafearless het volgende:
de N staat voor nieuw en de U staat voor upgrade
en daar zou ik graag onderscheid tussen willen zien
En is het enige verschil echt de kleur, of is het dus ook een andere letter?

Je hebt met perl natuurlijk de beschikking over regular expressions, en misschien is een of andere substring functie ook wel voldoende.

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Ik heb nu dus bijv de volgende code's geprobeerd
code:
1
2
3
if (/^\\[ebuild  N/) {
if (/^\\[ebuild\s\sN/) {
if (/^\\[ebuild\s+N/) {

en dan is natuurlijk $_ een van de regels zoals de boven aande post staan

meer weet ik er eigenlijk niet

specs : http://specs.tweak.to/7435


Verwijderd

Moet het dan niet zoiets als dit zijn: :?
code:
1
if ($line =~ m/^\\[ebuild\s+N/)

Disclaimer: ik weet niet zoveel van de syntax van Perl.
[edit] ik was ^ vergeten... kostbare performance fout

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Op woensdag 29 mei 2002 21:13 schreef Cheatah het volgende:
Moet het dan niet zoiets als dit zijn: :?
code:
1
if ($line =~ m/\\[ebuild\s+N/)

Disclaimer: ik weet niet zoveel van de syntax van Perl.
nee helaas

specs : http://specs.tweak.to/7435


  • tomato
  • Registratie: November 1999
  • Niet online
Kun je daarvoor niet beter iets als dit gebruiken :?
code:
1
% egrep '^\\[ebuild +N' | jouw-commando

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Op woensdag 29 mei 2002 21:32 schreef tomato het volgende:
Kun je daarvoor niet beter iets als dit gebruiken :?
code:
1
% egrep '^\\[ebuild +N' | jouw-commando
dat werkt wel maar tis niet zoals het hoort, en het zit me dan toch niet lekker

specs : http://specs.tweak.to/7435


  • tomato
  • Registratie: November 1999
  • Niet online
dafearless: dat werkt wel maar tis niet zoals het hoort, en het zit me dan toch niet lekker
Euh... maar wat hoort er dan niet als ik vragen mag :?

[edit] Behalve dan dat ik een Unix n00b ben en dus nogal eens iets verkeerd om zet :+

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
volgens mij is dat geen perl

maar heb het al gevonden


ik gebruik nu
code:
1
if (/\\[ebuild\s+\^[\\[32\;01mN/) {

en dat werkt

toch bedankt.

specs : http://specs.tweak.to/7435


  • tomato
  • Registratie: November 1999
  • Niet online
dafearless: volgens mij is dat geen perl
Nee :D

Overal perl voor willen gebruiken, dat hebben we natuurlijk allemaal wel eens he >:)

  • DaFearLess
  • Registratie: Juni 2001
  • Niet online
Op woensdag 29 mei 2002 21:52 schreef tomato het volgende:

[..]

Nee :D

Overal perl voor willen gebruiken, dat hebben we natuurlijk allemaal wel eens he >:)
Het zit me dan toch niet lekker als ik een extern commando in perl gaat gebruiken en als ik weet dat het in perl ook kan

tis puur voor mijn zelf

en heb er nu ook weer wat van geleerd :)

specs : http://specs.tweak.to/7435


  • tomato
  • Registratie: November 1999
  • Niet online
dafearless: Het zit me dan toch niet lekker als ik een extern commando in perl gaat gebruiken en als ik weet dat het in perl ook kan
Aha, ik wist niet dat je er meer mee wilde doen (en dus sowieso al perl gebruikte) dan je hier beschreef ;)
Pagina: 1