Il s'agit de la commande i3status qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
i3status - Génère une ligne d'état pour i3bar, dzen2, xmobar ou lemonbar
SYNOPSIS
i3status [-c fichierconfig] [-h] [-v]
OPTIONS
-c
Spécifie un autre chemin d'accès au fichier de configuration. Par défaut, i3status recherche
fichiers de configuration dans l'ordre suivant :
1. ~/.i3status.conf
2. ~/.config/i3status/config (ou $XDG_CONFIG_HOME/i3status/config si défini)
3. /etc/i3status.conf
4. /etc/xdg/i3status/config (ou $XDG_CONFIG_DIRS/i3status/config si défini)
DESCRIPTION
i3status est un petit programme (environ 1500 SLOC) pour générer une barre d'état pour i3bar,
dzen2, xmobar, lemonbar ou des programmes similaires. Il est conçu pour être très efficace en
émettre un très petit nombre d'appels système, car on souhaite généralement mettre à jour un tel
ligne d'état toutes les secondes. Cela garantit que même sous une charge élevée, votre barre d'état est
mis à jour correctement. En outre, il économise un peu d'énergie en ne monopolisant pas votre processeur autant que
engendrer le nombre correspondant de commandes shell.
CONFIGURATION
L'idée de base de i3status est que vous pouvez spécifier quels "modules" doivent être utilisés (le
directive de commande). Vous pouvez ensuite configurer chaque module avec sa propre section. Pour chaque
module, vous pouvez spécifier le format de sortie. Voir ci-dessous pour une référence complète.
Échantillon paramétrage.
général {
format_sortie = "dzen2"
couleurs = vrai
intervalle = 5
}
commande += "ipv6"
commande += "disque /"
commande += "run_watch DHCP"
commande += "run_watch VPNC"
commande += "chemin_existe VPN"
commande += "WLAN sans fil0"
commande += "Ethernet eth0"
commande += "batterie 0"
ordre += "cpu_temperature 0"
commande += "charger"
ordre += "tztime local"
commande += "tztime berlin"
sans fil wlan0 {
format_up = "W : (%quality at %essid, %bitrate) %ip"
format_down = "W : bas"
}
eth0 {
# si vous utilisez %speed, i3status nécessite la capacité cap_net_admin
format_up = "E : %ip (%speed)"
format_down = "E: bas"
}
batterie 0 {
format = "%status %pourcentage %restant %tempsvide"
format_down = "Pas de batterie"
status_chr = "⚇ CHR"
status_bat = "⚡ BAT"
status_full = "☻ PLEIN"
chemin = "/sys/class/power_supply/BAT%d/uevent"
seuil_bas = 10
}
run_watch DHCP {
pidfile = "/var/run/dhclient*.pid"
}
run_watch VPNC {
# fichier contenant le PID d'un processus vpnc
pidfile = "/var/run/vpnc/pid"
}
path_exists VPN {
# chemin existe lorsqu'un tunnel VPN lancé par nmcli/nm-applet est actif
chemin = "/proc/sys/net/ipv4/conf/tun0"
}
heure locale {
format = "%Y-%m-%d %H:%M:%S"
}
tztime berlin {
format = "%Y-%m-%d %H:%M:%S %Z"
fuseau horaire = "Europe/Berlin"
}
charge {
format = "%5min"
}
température_processeur 0 {
format = "T : %degrés °C"
chemin = "/sys/devices/platform/coretemp.0/temp1_input"
}
disque "/" {
format = "%gratuit"
}
Général
La directive colours désactivera toutes les couleurs si vous la définissez sur false. Vous pouvez également spécifier
les couleurs qui seront utilisées pour afficher les valeurs « bonnes », « dégradées » ou « mauvaises » en utilisant le
les directives color_good, color_degraded ou color_bad, respectivement. Ces directives sont
utilisé uniquement si la prise en charge des couleurs n'est pas désactivée par la directive couleurs. Le format d'entrée pour
valeurs de couleur est le triplet hexadécimal RVB canonique (sans séparateurs entre les
couleurs), préfixé par un caractère dièse ("#").
Exemple paramétrage:
color_good = "#00FF00"
De même, vous pouvez utiliser la directive color_separator pour spécifier la couleur qui sera utilisée
pour peindre la barre de séparation. Le séparateur est toujours imprimé en couleur, même lorsque les couleurs sont
désactivé par la directive sur les couleurs. Cette option n'a aucun effet lorsque output_format est défini sur
i3bar ou aucun.
La directive interval spécifie le temps en secondes pendant lequel i3status se mettra en veille avant
impression de la ligne d'état suivante.
En utilisant output_format, vous pouvez choisir les chaînes de format que i3status doit utiliser dans sa sortie.
Actuellement disponibles sont :
i3bar
i3bar est livré avec i3 et fournit une barre d'espace de travail qui fait la bonne chose dans
situations multi-écrans. Il est également livré avec un support de plateau et peut afficher le statut i3
sortir. Ce type de sortie utilise JSON pour transmettre autant de méta-informations à i3bar que
possible (comme les couleurs, quels blocs peuvent être raccourcis de quelle manière, etc.).
dzen2
Dzen est un programme de messagerie, de notification et de menu à usage général pour X11. C'était
conçu pour être scriptable dans n'importe quel langage et s'intégrer bien avec les gestionnaires de fenêtres comme
dwm, wmii et xmonad bien que cela fonctionne avec n'importe quel gestionnaire de fenêtres
xmobar
xmobar est une barre d'état minimaliste, basée sur du texte. Il a été conçu pour fonctionner avec le
Gestionnaire de fenêtres xmonad.
citronnelle
lemonbar est une barre légère entièrement basée sur XCB. Il a un support UTF-8 complet et est
Conforme EWMH.
terme
Utilisez les séquences d'échappement ANSI pour produire une sortie de terminal aussi proche que possible de la
sorties graphiques. Cela facilite un peu le débogage de votre fichier de configuration car
la sortie du terminal de i3status devient beaucoup plus lisible, mais ne devrait être utilisée que pour
de tels coups d'œil rapides, car il ne prendra en charge que les fonctionnalités de sortie très basiques (par
exemple, vous n'obtenez que 3 bits de profondeur de couleur).
aucun
N'utilise aucun code couleur. Sépare les valeurs par le symbole du tuyau par défaut. Cette
doit être utilisé avec i3bar et peut être utilisé pour des scripts personnalisés.
Il est également possible d'utiliser les directives color_good, color_degraded, color_bad pour définir
couleurs spécifiques par module. Si l'une de ces directives est définie dans une section de module, son
value remplacera la valeur définie dans la section générale uniquement pour ce module.
Si vous n'aimez pas les séparateurs verticaux entre les modules qu'i3status/i3bar utilise par défaut,
vous pouvez utiliser la directive separator pour configurer la façon dont les modules sont séparés. Vous pouvez
soit désactiver complètement le séparateur par défaut en le définissant sur la chaîne vide. Tu pourrais
puis définissez la séparation dans le cadre de la chaîne de format d'un module. C'est votre seule option lorsque
en utilisant le format de sortie i3bar comme séparateur est dessiné par i3bar directement sinon. Pour
les autres formats de sortie, la chaîne non vide fournie sera automatiquement incluse
avec les bits de coloration nécessaires si la prise en charge des couleurs est activée.
i3bar prend en charge le balisage Pango, permettant à vos chaînes de format de spécifier la couleur de la police, la taille,
etc. en définissant la directive de balisage sur "pango". Notez que l'esperluette ("&"), inférieur à
("<"), supérieur à (">"), guillemets simples ("'") et guillemets doubles (""") doivent être
être remplacé par "&", "<", ">", "'" et """ respectivement.
fait automatiquement pour le contenu généré (par exemple, ESSID sans fil, heure).
Exemple paramétrage:
général {
output_format = "xmobar"
séparateur = " "
}
commande += "charger"
commande += "disque /"
charge {
format = "[ chargement : %1min, %5min, %15min ]"
}
disque "/" {
format = "% de disponibilité"
}
IPv6
Ce module obtient l'adresse IPv6 utilisée pour les connexions sortantes (c'est-à-dire la meilleure
adresse IPv6 publique disponible sur votre ordinateur).
Exemple format_up: %ip
Exemple format_bas: pas d'IPv6
Disque
Obtient utilisé, gratuit, disponible et le nombre total d'octets sur le système de fichiers monté donné.
Ces valeurs peuvent également être exprimées en pourcentages avec le pourcentage_utilisé,
formats percent_free, percent_avail et percent_used_of_avail.
Les tailles d'octets sont présentées dans un format lisible par l'homme à l'aide d'un ensemble de préfixes dont le type peut
être spécifié via l'option "prefix_type". Trois ensembles de préfixes sont disponibles :
binaire
Les préfixes IEC (Ki, Mi, Gi, Ti) représentent des multiples de puissances de 1024. C'est le
défaut.
décimal
Les préfixes SI (k, M, G, T) représentent des multiples de puissances de 1000.
Customiser
Les préfixes personnalisés (K, M, G, T) représentent des multiples de puissances de 1024.
Il est possible de définir un low_threshold qui provoque l'affichage du texte du disque en utilisant
color_bad. Le type low_threshold peut être de threshold_type "bytes_free", "bytes_avail",
"percentage_free" ou "percentage_avail", où les deux premiers peuvent être précédés d'un
préfixe générique (k, m, g, t) ayant prefix_type. Donc, si vous configurez low_threshold sur 2,
seuil_type à "gbytes_avail", et prefix_type à "binaire", et le reste disponible
l'espace disque est inférieur à 2 Gio, il sera de mauvaise couleur. S'il n'est pas spécifié, le seuil_type est
supposé être "percentage_avail" et low_threshold à 0, ce qui implique aucun
coloration du tout.
Vous pouvez définir un format différent avec l'option "format_non_monté" qui est utilisée si
le chemin n'existe pas ou n'est pas un point de montage. Vous pouvez donc simplement vider la sortie pour le
chemin donné en ajoutant format_not_mount="" à la section de configuration.
Exemple de commander: disque /mnt/clé usb
Exemple le format: %gratuit (%avail)/ %total
Exemple le format: %percentage_used utilisé, %percentage_free gratuit, %percentage_avail disponible
Exemple type_préfixe: Douane
Exemple seuil bas5
Exemple seuil_type: pourcentage_gratuit
Courir-regarder
Développe le chemin donné vers un fichier pid et vérifie si l'ID de processus trouvé à l'intérieur est valide
(c'est-à-dire si le processus est en cours d'exécution). Vous pouvez l'utiliser pour vérifier si une application spécifique,
tel qu'un client VPN ou votre client DHCP est en cours d'exécution. Il y a aussi une option
"format_vers le bas". Vous pouvez masquer la sortie avec format_down="".
Exemple de commander: run_watch DHCP
Exemple le format: %title : %statut
Chemin-existe
Vérifie si le chemin donné existe dans le système de fichiers. Vous pouvez l'utiliser pour vérifier si quelque chose
est actif, comme par exemple un tunnel VPN géré par NetworkManager. Il y a aussi un
option "format_down". Vous pouvez masquer la sortie avec format_down="".
Exemple de commander: path_exists VPN
Exemple le format: %title : %statut
Sans-fil
Obtient la qualité de la liaison, la fréquence et l'ESSID de l'interface réseau sans fil donnée. Tu
peut spécifier différentes chaînes de format pour le réseau connecté ou non connecté.
Le nom d'interface spécial _first_ sera remplacé par le premier réseau sans fil
interface trouvée sur le système (à l'exclusion des périphériques commençant par "lo").
Exemple de commander: sans fil wlan0
Exemple le format: W: (%qualité à %essid, %bitrate / %fréquence) %ip
Ethernet
Obtient l'adresse IP et (si possible) la vitesse de liaison de l'interface Ethernet donnée.
L'obtention de la vitesse de liaison nécessite la capacité cap_net_admin. Réglez-le en utilisant setcap
cap_net_admin=ep $ (quel i3status).
Le nom d'interface spécial _first_ sera remplacé par le premier réseau non sans fil
interface trouvée sur le système (à l'exclusion des périphériques commençant par "lo").
Exemple de commander: Ethernet eth0
Exemple le format: E : %ip (%vitesse)
Batterie
Obtient l'état (charge, décharge, fonctionnement), pourcentage, temps restant et puissance
consommation (en Watts) de la batterie donnée et quand on estime qu'elle est vide. Si tu
voulez utiliser la dernière pleine capacité au lieu de la capacité de conception (lors de l'utilisation de la conception
capacité, il peut arriver que votre batterie soit à 23% lorsqu'elle est complètement chargée car elle est vieille.
En général, je veux le voir de cette façon, car cela me dit à quel point ma batterie est usée.),
spécifiez simplement last_full_capacity = true. Vous pouvez masquer les secondes dans le temps restant et
estimations de temps vides en définissant hide_seconds = true.
Si vous souhaitez que le pourcentage de batterie soit affiché sans décimales, ajoutez
entier_batterie_capacité = vrai.
Si votre batterie est représentée dans un chemin non standard dans / sys, assurez-vous de modifier le
propriété "path" en conséquence, c'est-à-dire pointant vers le fichier uevent sur votre système. La première
l'occurrence de %d est remplacée par le numéro de la batterie, mais vous pouvez simplement coder en dur un chemin
également.
Il est possible de définir un low_threshold qui fait que le texte de la batterie est coloré en rouge.
Le type low_threshold peut être de type_seuil "temps" ou "pourcentage". Alors, si vous
configurez low_threshold à 10 et threshold_type à "time", et votre batterie dure un autre
9 minutes, il sera coloré en rouge.
Des chaînes personnalisées en option, y compris des symboles UTF-8, peuvent être utilisées pour différentes batteries
États. Cela permet d'afficher des symboles individuels pour chaque état (charge,
décharge, plein) Bien sûr, cela fonctionnera également avec des polices emblématiques spéciales, telles que
FontAwesome. Si l'une de ces chaînes de statut spécial est omise, la valeur par défaut (CHR, BAT,
PLEIN) est utilisé.
Exemple de commander: batterie 0
Exemple le format: %statut %restant (%tempsvide %consommation)
Exemple format_bas: Pas de batterie
Exemple statut_chr: CHR
Exemple statut_bat: ⚡ CHAUVE-SOURIS
Exemple statut_full: COMPLET
Exemple seuil bas30
Exemple seuil_type: temps
Exemple chemin: /sys/class/power_supply/CMB1/uevent
CPU-Température
Obtient la température de la zone thermique donnée. Il est possible de définir un max_threshold
qui colorera la température en rouge au cas où la zone thermique spécifiée deviendrait trop chaude.
Par défaut à 75 degrés C.
Exemple de commander: température_processeur 0
Exemple le format: T : %degrés °C
Exemple seuil_max42
Exemple chemin: /sys/devices/platform/coretemp.0/temp1_input
Processeur Utilisation
Obtient le pourcentage d'utilisation du processeur à partir de /proc/stat (Linux) ou système(3) (FreeBSD/OpenBSD).
Exemple de commander: l'utilisation du processeur
Exemple le format: %utilisation
Charge
Obtient la charge système (nombre de processus en attente de temps CPU au cours des 1, 5 et 15 derniers
minutes). Il est possible de définir un max_threshold qui colorera la valeur de charge en rouge dans
cas où la charge moyenne de la dernière minute devient supérieure au seuil configuré.
La valeur par défaut est 5.
Exemple de commander: charge
Exemple le format: %1min %5min %15min
Exemple seuil_max: "0,1"
Heure
Affiche l'heure actuelle dans le fuseau horaire local. Pour utiliser un fuseau horaire différent, vous pouvez définir
la variable d'environnement TZ ou utilisez le module tztime. Voir strftime(3) pour plus de détails sur le
chaîne de formatage.
Exemple de commander: temps
Exemple le format: %Y-%m-%d %H:%M:%S
Heure Tz
Affiche l'heure actuelle dans le fuseau horaire donné. Si aucun fuseau horaire n'est indiqué, l'heure locale sera
être utilisé. Voir strftime(3) pour plus de détails sur la chaîne de format. La base de données des fuseaux horaires du système
est généralement installé dans /usr/share/zoneinfo. Les fichiers sous ce chemin font un fuseau horaire valide
chaînes, par exemple pour /usr/share/zoneinfo/Europe/Berlin vous pouvez régler le fuseau horaire sur Europe/Berlin
dans le module tztime.
Exemple de commander: tztime berlin
Exemple le format: %Y-%m-%d %H:%M:%S %Z
Exemple fuseau horaire: Europe/Berlin
Si vous souhaitez utiliser le balisage dans cette section, il existe une option format_time distincte
qui est automatiquement échappé. Sa sortie remplace alors %time dans la chaîne de format.
Exemple paramétrage (balisage):
heure tztime {
format = " heure : %heure"
format_heure = "%H:%M %Z"
}
DDate
Affiche la date discordante actuelle dans un format spécifié par l'utilisateur. Voir dDate(1) pour plus de détails sur
la chaîne de formatage. Note: Ni %. ni %X sont encore mis en œuvre.
Exemple de commander: date
Exemple le format: %{%a, %b %d%}, %Y%N - %H
Volume
Produit le volume du mélangeur spécifié sur l'appareil spécifié. PulseAudio et ALSA
(Linux uniquement) sont pris en charge. Si PulseAudio est absent, une configuration simplifiée peut être
utilisé sur FreeBSD et OpenBSD en raison de l'absence d'ALSA, les options de périphérique et de mixage peuvent être
ignorés sur ces systèmes. Sur ces systèmes, l'API OSS est utilisée à la place pour interroger /dev/mixer
directement si mixer_idx vaut -1, sinon /dev/mixer+mixer_idx+.
Pour obtenir les informations de volume PulseAudio, il faut utiliser le format suivant dans l'appareil
en ligne:
appareil = "impulsion"
or
appareil = "impulsion:N"
où N est l'indice du puits PulseAudio. Si aucun récepteur n'est spécifié, la valeur par défaut est utilisée.
Si la chaîne de périphérique est manquante ou est définie sur "par défaut", PulseAudio sera essayé si
détecté et se repliera sur ALSA (Linux) ou OSS (FreeBSD/OpenBSD).
Exemple de commander: maître du volume
Exemple le format: ♪ : % volume
Exemple format_muet: : 0%%
Exemple paramétrage:
maître du volume {
format = "♪: %volume"
format_muted = "♪: muet (%volume)"
appareil = "par défaut"
mélangeur = "Maître"
mélangeur_idx = 0
}
Exemple paramétrage (PulseAudio):
maître du volume {
format = "♪: %volume"
format_muted = "♪: muet (%volume)"
appareil = "impulsion:1"
}
UNIVERSEL MODULE OPTIONS
Lorsque vous utilisez le format de sortie i3bar, quelques options supplémentaires peuvent être utilisées
avec tous les modules pour personnaliser leur apparence :
aligner
La politique d'alignement à utiliser lorsque la largeur minimale (voir ci-dessous) n'est pas atteinte. Soit
centre (par défaut), à droite ou à gauche.
largeur_min
La largeur minimale (en pixels) que le module doit occuper. Si le module prend moins de place
que la taille spécifiée, le bloc sera rembourré à gauche et/ou à droite,
selon la politique d'alignement définie. Ceci est utile lorsque vous voulez empêcher le
toute la ligne d'état ne se déplace pas lorsque les valeurs prennent plus ou moins d'espace entre chaque
itération. L'option peut également être une chaîne. Dans ce cas, la largeur du texte donné
détermine la largeur minimale du bloc. Ceci est utile lorsque vous souhaitez définir un
largeur minimale sensible quelle que soit la police que vous utilisez et à quel
Taille. Veuillez noter qu'un numéro entre guillemets sera toujours traité comme un
.
Exemple paramétrage:
disque "/" {
format = "% de disponibilité"
aligner = "gauche"
largeur_min = 100
}
EN UTILISANT I3STATUT avec DZEN2
Après avoir installé dzen2, vous pouvez l'utiliser directement avec i3status. Assurez-vous simplement que
output_format est défini sur dzen2.
Exemple pour usage of i3statut avec dzen2:
i3status | dzen2 -fg blanc -ta r -w 1280 \
-fn "-misc-fixed-medium-r-normal--13-120-75-75-C-70-iso8859-1"
EN UTILISANT I3STATUT avec XMOBAR
Pour démarrer xmobar, vous devrez peut-être copier le fichier de configuration par défaut dans
~/.xmobarrc. Assurez-vous également que l'option output_format pour i3status est définie sur xmobar.
Exemple pour usage of i3statut avec xmobar:
i3status | xmobar -o -t "%StdinReader%" -c "[Exécuter StdinReader]"
WHAT A PROPOS MÉMOIRE UTILISATION OR Processeur LA FRÉQUENCE?
Tout en parlant de deux choses spécifiques, veuillez comprendre cette section comme un
explication pourquoi vos informations préférées ne sont pas incluses dans i3status.
Parlons spécifiquement de l'utilisation de la mémoire. Il est difficile de mesurer la mémoire d'une manière qui
précis ou significatif. Une compréhension approfondie du fonctionnement de la pagination et de la mémoire virtuelle dans
votre système d'exploitation est requis. De plus, même si nous avions une manière bien définie de
afficher l'utilisation de la mémoire et vous le comprendriez, je pense que ce n'est pas utile de
surveiller à plusieurs reprises votre utilisation de la mémoire. L'une des raisons à cela est que je n'ai pas manqué de
mémoire ces dernières années. La mémoire est devenue si bon marché que même à mon enfant de 4 ans
portable, j'ai 8 Gio de RAM. Une autre raison est que votre système d'exploitation fera le
bonne chose de toute façon : Soit vous n'avez pas assez de RAM pour votre charge de travail, mais vous devez faire
de toute façon, alors votre système d'exploitation permutera. Ou vous n'avez pas assez de RAM et vous voulez
pour restreindre votre charge de travail afin qu'elle s'adapte, le système d'exploitation tuera le processus
utilisant trop de RAM et vous pouvez agir en conséquence.
Pour la fréquence CPU, la situation est similaire. Beaucoup de gens ne comprennent pas à quel point la fréquence
la mise à l'échelle fonctionne avec précision. Le gouverneur de fréquence CPU généralement recommandé ("à la demande")
modifie la fréquence du processeur beaucoup plus souvent que i3status ne pourrait l'afficher. L'affichage
nombre est donc souvent incorrect et ne vous dit rien d'utile non plus.
En général, i3status veut afficher des choses que vous regarderiez occasionnellement de toute façon,
comme la date/l'heure actuelle, que vous soyez connecté ou non à un réseau WiFi, et si vous
disposer de suffisamment d'espace disque pour ce téléchargement de 4.3 Gio.
Cependant, si vous avez besoin de consulter une information de temps à autre (comme
en vérifiant à plusieurs reprises à quel point votre RAM est pleine), vous feriez probablement mieux d'utiliser un script
cela, qui affiche une alerte lorsque votre utilisation de la RAM atteint un certain seuil. Après tout,
le but des ordinateurs n'est pas de vous alourdir avec des tâches ennuyeuses supplémentaires comme à plusieurs reprises
vérifier un nombre.
EXTERNE SCRIPTS/PROGRAMMES avec I3STATUT
Dans i3status, nous ne voulons plus implémenter la gestion des processus. Par conséquent, il n'y a pas
module pour exécuter des scripts ou des commandes arbitraires. Au lieu de cela, vous devriez utiliser votre shell, pour
exemple comme ceci :
Exemple pour préfixe le i3statut sortie:
#!/ Bin / sh
# script shell pour ajouter plus de choses à i3status
i3status | tandis que :
do
lire la ligne
echo "mystuff | $line" || sortie 1
fait
Mettez cela dans un script, dites .bin/my_i3status.sh et exécutez-le au lieu de i3status.
Notez que si vous souhaitez utiliser le format de sortie JSON (avec des couleurs dans i3bar), vous devez
utilisez un script wrapper légèrement plus complexe. Il y a des exemples dans le dossier contrib/, voir
http://code.i3wm.org/i3status/tree/contrib
SIGNAUX
Lors de la réception de SIGUSR1, le nanosleep() d'i3status sera interrompu et vous forcerez ainsi
une mise à jour. Vous pouvez utiliser killall -USR1 i3status pour forcer une mise à jour après avoir changé le système
volume, par exemple.
Utilisez i3status en ligne en utilisant les services onworks.net
