.png)
Я ищу способ получить список всех файлов/папок текущего каталога в моем терминале, который обновлялся бы автоматически и работал бы, пока я активно просматриваю и редактирую файлы.
Я представляю, что это как-то возможно с терминальным мультиплексором. Но я не знаю, как можно уведомить другой процесс об изменении в текущем процессе.
Если я работаю watch ls -a
в одном разделенном представлении, оно будет обновляться только при изменении файлов в этом же каталоге, а не при изменении каталога моего другого разделенного представления.
По сути, я хочу, чтобы это выглядело примерно так:
Как этого можно добиться?
решение1
Вы можете использовать PID оболочки 1 и использовать ее информацию о процессе (CWD) для обновления ls
в оболочке 2.
оболочка 1:
$ echo $$
24678
оболочка 2:
$ watch ls /proc/24678/cwd/
Теперь вы можете использовать cd
оболочку 1, и представление в оболочке 2 будет обновляться в оболочке 2 (по умолчанию каждые 2 секунды).
Хорошая фишка: можно использовать watch -d
для выделения различий между последовательными обновлениями (созданием/удалением файлов и т. д.)
решение2
ВозможноПолуночный Командирили похожая программа делает то, что вы хотите? Вы можете наложить окно терминала с двумя списками файлов, есть сочетания клавиш, но вы все равно можете переключиться на полную оболочку.