PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : hilfe mit regexp für expr match


an.zgep
2010-06-15, 13:31:32
im ubuntu-forum schreibt mir keiner was, deshalb poste ich auch mal hier;)

hello everyone,

I am trying to improve my mdadm raid tuning script and I'm stuck. What I need is a regular expression that returns the "drive letters" of all partitions that are part of an md array and one that only returns the letters of those that are not spares.
so far I haveexpr match "`grep \"md51 : \" /proc/mdstat`" '.*\(\<sd[a-z]1\[[12]\?[0-9]\]\((S)\)\? \?\)\+'the `grep \"md51 : \" /proc/mdstat` part gives memd51 : active raid5 sdd1[3] sdc1[0] sdg1[1] sdh1[4] sdf1[5](S) sde1[2]the whole command only gives me the last part of that (sde1[2]) where I want all the drives. That string will then be cut down to just dcghfe, but I can't work on that until I figure out how to get all the drives. If I end the regexp with \{6\} instead of \+ I still get the same result (just the last drive).

And I have not yet worked on getting just the active drives (everything without an appendent (S)), so I can cut that down to dcghe.

can someone help me out with some regex-magic?
thx4help,
alex

wenn irgend jemand eine deutsche übersetzung brauchen sollte reiche ich die noch nach ;)

mfg,
alex/zgep

Gast
2010-06-15, 17:17:39
es hat sich eine Lösung gefunden, zwar nicht ganz so elegant wie ich gehofft habe, aber immerhin. wer ein ähnliches problem hat, kann sie sich unter http://ubuntuforums.org/showthread.php?t=1510176 ansehen

mfg,
alex/zgep