.png)
Estoy buscando una manera de tener una lista de todos los archivos/carpetas del directorio actual en mi terminal que se actualice automáticamente y se ejecute mientras navego y edito archivos activamente.
Me imagino que de alguna manera será posible con un multiplexor de terminal. Pero no sé cómo podrías notificar a otro proceso sobre el cambio en el proceso actual.
Si ejecuto watch ls -a
en una vista dividida, solo se actualizará cuando cambien los archivos en ese mismo directorio, no cuando cambie el directorio de mi otra vista dividida.
Básicamente, quiero que se vea así:
¿Cómo podría lograrse esto?
Respuesta1
Puede usar el PID del shell 1 y usar su información de proceso (CWD) para actualizar ls
en el shell 2.
caparazón 1:
$ echo $$
24678
caparazón 2:
$ watch ls /proc/24678/cwd/
Ahora puede usarlo cd
en el shell 1 y la vista en el shell 2 se actualizará en el shell 2 (de forma predeterminada, cada 2 segundos).
Un buen truco: podrías usarlo watch -d
para resaltar las diferencias entre actualizaciones sucesivas (creación/eliminación de archivos, etc.)
Respuesta2
PosiblementeComandante de medianocheo un programa similar hace lo que quieres? Puede superponer la ventana de la terminal con dos listas de archivos, hay atajos de teclado, pero aún puede cambiar a un shell completo.