Von man watch
:
Nicht druckbare Zeichen werden aus der Programmausgabe entfernt. Verwenden Sie "cat -v" als Teil der Befehlspipeline, wenn Sie sie sehen möchten.
Wie verwende ich also, cat -v
wenn ich die Farbausgabe von sehen möchte:
watch ls -al --color
watch --color "sudo iwlist wlan0 scanning | egrep 'Quality|ESSID' | egrep --color -i 'foobar|$'"
die Farben essen :(watch
Option from procps (die Standardeinstellung in den meisten Linux-Distributionen, glaube ich) gibt es--color
seit V3.3.2.Ich denke, mit dem Befehl 'watch' ist dies möglicherweise nicht möglich. Hier ist ein längerer Weg, dies zu tun:
Sie könnten dies in ein Skript einfügen, zum Beispiel:
Um dies zu verdeutlichen, hier ist der Grund, warum ich denke, dass es mit dem Befehl 'watch' nicht möglich ist. Sehen Sie, was passiert, wenn Sie cat -v verwenden:
Es zeigt dir die Farbkontrollzeichen ... was meiner Meinung nach nicht das ist, was du willst.
quelle
man watch
deutet klar darauf hin, dass es ohne Dissens möglich sein solltewatch
.cat -v
zu sehen, worüber gesprochenman watch
wurde.while true; do out=$(date;echo;ls -al --color);clear;echo $out;sleep 2;done
echo "$out"
. stackoverflow.com/q/2414150/86967Wenn Sie einen Mac verwenden, wie ich, unterstützt
watch
Homebrew keine Farben.Was Sie wollen, ist fswatch, aber es ist noch nicht Homebrew. Um es zu installieren, möchten Sie das etwas gewundenere tun
https://raw.github.com/mlevin2/homebrew/116b43eaef08d89054c2f43579113b37b4a2abd3/Library/Formula/fswatch.rb
Siehe diese SO-Antwort zur Verwendung.
quelle
watch
für einen Befehl giltUPDATE : Die neuesten Versionen von haben
watch
das Problem behoben. Wenn also die Farben vonwatch --color
falsch sind, ist es wahrscheinlich besser, sie einfach zu aktualisieren (auf meinem System ist sie improcps
Paket enthalten).Die Farbunterstützung
watch --color
ist meiner Erfahrung nach begrenzt (obwohl ausreichend fürls -l --color
). Hier ist meine Version von @ davrs Antwort mit einigen zusätzlichen Funktionen, vor allem reduziertem Flimmern. Sie können es in Ihre .bashrc einfügen und als .bashrc verwendencwatch ls -l --color
.Sie können auch Dinge wie versuchen
Wenn Ihr Terminal weniger Leitungen als der Ausgang hat. Dies funktioniert jedoch nur, wenn alle Zeilen kürzer als die Klemmenbreite sind. Die beste Lösung, die ich dafür kenne, ist:
quelle