web-dev-qa-db-fra.com

Y a-t-il un équivalent de GNU "logement" de l'écran "dans tmux?

Je fais de lourde utilisation de la commande "log" de l'écran pour enregistrer la sortie d'une session à un fichier, lorsque je passe des modifications dans un environnement donné. J'ai cherché à travers la page d'homme de Tmux, mais je n'ai pas trouvé d'équivalent. Quelqu'un est-il au courant d'une caractéristique similaire à TMUX, ou dois-je écrire mes propres scripts de wrapper pour faire cela?

EDIT: Je suis au courant des "scripts" et d'autres utilitaires qui me permettent de connecter une session. La raison pour laquelle la fonctionnalité de l'écran est si utile est la possibilité de définir une variable logfile qui utilise des échappées à chaîne pour identifier de manière unique chaque session.

par exemple. J'ai une fonction shell qui, étant donné un nom d'hôte, sera SSH à cet hôte dans une nouvelle fenêtre d'écran et définir le titre de la fenêtre sur le nom d'hôte. Lorsque je démarre un journal de cette session, il est préfixé avec le titre de la fenêtre.

Si cette fonctionnalité n'existe pas dans TMUX, je devrai créer un nouvel ensemble de fonctions Shell pour configurer des "scripts" des sessions que je veux enregistrer. Ce n'est pas extrêmement difficile, mais cela ne vaut peut-être pas l'effort que cet écran fait exactement ce dont j'ai besoin déjà.

35
Murali Suriar

Après avoir examiné la documentation pour TMUX, je ne trouve aucun équivalent de la journalisation de la fenêtre de l'écran. On dirait que vous devez utiliser vos fonctions de shell pour faire ce que vous souhaitez, ou simplement utiliser l'écran. Vous pouvez activer le débogage, qui enregistre à la fois le serveur et le côté du client, mais il comprend également beaucoup de journaux relatifs à des TMux étrangers également, de sorte que ce ne serait pas exactement ce que vous demandez.

Vous pouvez éventuellement utiliser le presse-papier de TMUX pour automatiser la sauvegarde du tampon à une autre session, qui serait configuré pour accepter le contenu du presse-papiers et enregistrer dans un fichier. Cela semble un type de piratage.

4
jsbillings

je l'utilise à l'aide de script, c'est à partir de mon fichier tmux.conf

bind ^C new-window "script -f /home/jcosta/mydocs/work/logs/$(date '+%d%m%Y_%H%M%S')_$$.log"
bind c new-window "script -f /home/jcosta/mydocs/work/logs/$( date '+%d%m%Y_%H%M%S')_$$.log"
bind | split-window "script -f /home/jcosta/mydocs/work/logs/$(date '+%d%m%Y_%H%M%S')_$$.log"
1
user6119