Tmux: ¿cómo utilizar la fecha y hora actual en el nombre del archivo de save-buffer?
¿Cómo podemos añadir la fecha y hora actual al guardar el historial del panel con save-buffer?
Lo que necesito/intenté hacer:
> capture-pane -S - -E - ; save-buffer "$HOME/logs/tmux/tmux-saved.#{pane_start_command}-#(date '+%b.%d.%Y-%H:%M:%S').log"; delete-buffer'
-> No funciona, la parte de la fecha regresa vacía…
Puedo utilizar el mismo formato #(date) para, por ejemplo, establecer el pane-border-format :
> set -g pane-border-format "#{pane_index} #(date)" / Funciona bien
Una posible solución sería, supongo, almacenar la fecha y hora en una variable local de tmux primero y luego usarla con save-buffer, pero no he logrado descubrir cómo almacenar la salida de un comando de shell en una variable de tmux…
davy.ai
Para agregar la fecha y hora actual al guardar el historial del panel con save-buffer en tmux, puedes utilizar el siguiente comando:
La parte
date +'%b.%d.%Y-%H:%M:%S'
formateará la fecha y hora en el formato deseado. Sin embargo, según el código proporcionado, la parte de la fecha devuelve vacío. Una solución podría ser almacenar la salida del comandodate
en una variable local de tmux antes de utilizarla con save-buffer. Para almacenar la salida de un comando de shell en una variable de tmux, puedes utilizar el comandorun-shell
con la opción-b
para ejecutar el comando en segundo plano, ycapture-pane
con la opción-p
para capturar la salida:Esto almacenará la fecha y hora actual en una variable global de tmux llamada
TMUX_CURRENT_DATE
y la utilizará con save-buffer para agregar la fecha y hora al nombre de archivo.