Certaines commandes que j'utilise des couleurs d'affichage, mais quand je les utilise avec la montre, les couleurs disparaissent:
watch -n 1 node file.js
Est-il possible de récupérer les couleurs d'une manière ou d'une autre?
Certaines versions plus récentes de watch
prennent désormais en charge la couleur.
Par exemple watch --color ls -ahl --color
.
Connexes .
N'utilisez pas watch
... Lorsque vous utilisez des programmes de surveillance, vous pouvez détecter qu'ils n'écrivent pas sur un terminal, puis supprimer la couleur. Vous devez utiliser des indicateurs de programme spécifiques pour y conserver les codes de contrôle.
Si vous ne connaissez pas les drapeaux ou s'il n'y en a pas, vous pouvez faire regarder un pauvre en:
while sleep <time>; do clear; <command>; done
Il aura un peu de scintillement (la montre fonctionne en "double tampon") mais pour certains trucs, c'est assez utile.
Vous pourriez être tenté de fabriquer une montre pour homme pauvre à double tampon en utilisant
while sleep <time>; do <command> > /tmp/file; clear; cat /tmp/file; done
Mais alors vous frapperez à nouveau la fonctionnalité "Je n'écris pas sur un terminal".
Vous pouvez dupliquer l'opération fondamentale et sans fioritures de watch
dans quelques lignes de script Shell.
$ cat cheapwatch
#!/bin/sh
# Not quite your Rolex
while true ; do
clear
printf "[%s] Output of %s:\n" "$(date)" "$*"
# "$@" <- we don't want to do it this way, just this:
${Shell-/bin/sh} -c "$*"
sleep 1 # genuine Quartz movement
done
$ ./cheapwatch ls --color # no problem
Finalement, quelqu'un de très intelligent piratera une commande tr
dans ce script qui supprime les caractères de contrôle, puis forcera l'utilisateur à utiliser --color
pour désactiver cette logique. Pour l'instant, la pure naïveté de cette mise en œuvre éloigne le monstre mangeur de couleurs.
Si vous êtes dans une situation où watch
n'a pas le --color
option et vous ne pouvez pas mettre à jour le paquet pour quelque raison que ce soit, vous pouvez peut-être ajouter ceci.
OUI
la montre fonctionne avec une sortie couleur. cela fait partie du paquetage procps (au moins dans debian) voici le rapport de bug pour votre question http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=129334 où ils répondent , que vous devez mettre à jour le package procps
par exemple. avec ubuntu 11.04, ce paquet fonctionne http://packages.debian.org/wheezy/procps
tl; dr
mettre à jour procps
Du manuel de la montre:
Les caractères non imprimables sont supprimés de la sortie du programme. Utilisez "cat -v" dans le pipeline de commandes si vous souhaitez les voir.
Cependant, je ne sais pas comment l'utiliser.