Linux 15.009 Themen, 106.826 Beiträge

Batchausgabe farbig bei bestimmten Ereignisse

MetaIIica / 2 Antworten / Flachansicht Nickles

Ich hab mir bei Google schon nen Wolf gesucht und finde irgendwie nix passendes...

Folgendes Szenario: Ich nutze Ubuntu Server 12.04 zum compilieren von Android Custom-Roms

Nun nutze ich auch Commits von Gerrit um interessante Commits zu testen. Da es mehrere sind nutze ich eine Batchdatei dafür um alle nacheinander laufen zu lassen. Das funktioniert soweit tadellos..

Nun kann es ja mal vorkommen, das es beim Aufruf der Commits zu Konflikte kommt und ich erhalte folgende Meldung im Terminal (Beispiel): 

From http://review.pac-rom.com/android_packages_apps_Settings
* branch refs/changes/04/704/5 -> FETCH_HEAD
error: could not apply cb47651... Build PACPerformance in Settings [4/4]
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'
Recorded resolution for 'AndroidManifest.xml'.

Nun weiss ich, aha, die AndroidManifest.xml hat irgendwo ein Konflikt und ich kann diese nachbearbeiten... Funzt auch soweit

Da es aber manchmal eine gewaltige Menge an Commits ist, ist die Suche nach Konflikte natürlich etwas langwierig...

Nun möchte ich das solche Meldungen farbig dargestellt werden, nur wie bekomme ich das hin? Ich müsste ja am Anfang der Batch irgendwie definieren können das bestimmte Ausgabebegriffe beim durchlaufen farbig dargestellt werden...

zB. das in rot

hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'

einer ne Idee wie ich das anstellen kann?

wir leben in einer Demokratie und haben das Recht auf freie Meinungsäußerung, also halt's Maul!
bei Antwort benachrichtigen
mi~we MetaIIica „Batchausgabe farbig bei bestimmten Ereignisse“
Optionen
Ich müsste ja am Anfang der Batch irgendwie definieren können das bestimmte Ausgabebegriffe beim durchlaufen farbig dargestellt werden...

So einfach wird das wohl nicht gehen, da diese (Fehler-)Meldungen ja von irgendeinem Compiler (oder was immer du da aufrufst) kommen, den du innerhalb der Batchdatei aufrufst.

Vielleicht geht's mit Pipeline + grep (grep hat eine Option --color zum Einfärben):

http://stackoverflow.com/questions/981601/colorized-grep-viewing-the-entire-file-with-highlighting

"Es wäre dumm, sich über die Welt zu ärgern. Sie kümmert sich nicht darum." (Marc Aurel)
bei Antwort benachrichtigen