4 votes

Comment obtenir les dernières lignes tmux ?

J'écris un script qui est supposé ouvrir x nombre de sessions tmux, vérifier la dernière ligne et ensuite, en fonction de la sortie, faire ceci ou cela, mais je n'arrive pas à trouver un moyen de sauvegarder la sortie de tmux.

Jusqu'à présent, j'ai essayé de rediriger la sortie normalement > et aussi en utilisant le capture-pane comme ceci : tmux capture-pane -t session1 > file mais je n'obtiens rien à l'intérieur du fichier.

J'envisageais d'utiliser expect si nécessaire, mais une solution bash serait beaucoup plus efficace.

4voto

tbenz9 Points 6719

Le volet de capture enregistre les données dans une mémoire tampon. Le ">" enregistre la sortie d'écran dans un fichier. Un buffer et stdout ne sont pas nécessairement la même chose. Vous aurez besoin de la commande tmux "save-buffer" pour fonctionner. Quelque chose comme ce qui suit.

tmux capture-pane -S -10 ; save-buffer 'file' ; delete-buffer

Le site capture-pane -S -10 enregistrera les 10 dernières lignes de la sortie dans le volet et les placera dans un fichier appelé "file".

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X