строка состояния tmux с пустой строкой на вершине?

gzip удаленный файл log.txt в то время как процесс Java все еще имел его открытый. Удаление файла на самом деле означает удалять название того файла. (Когда файл имеет несколько имен, он, как говорят, имеет несколько жестких ссылок.) Данные файла только удалены, когда все имена файлов были удалены, и файл не открыт никаким процессом. Таким образом после того, как файл исчез, это было все еще на диске; файл был только на самом деле удален, когда процесс Java, из которого выходят или, закрыл файл.

Обратите внимание, что процесс Java все еще пишет в теперь удаленный файл. Не имеет значения при создании нового файла с тем же именем: это - другой файл.

Если файл не имеет имени в запасе на большинстве нельдов, Вы не можете воссоздать жесткую ссылку на него, даже если файл все еще открыт. Был предложенный патч для представления a flink системный вызов, чтобы сделать это на Linux, но это было подстрелено.

Можно все еще считать содержание файла (удобно на Linux, и возможно менее удобно на большинстве нельдов). Каталог /proc/1234/fd то, где 1234 является PID процесса Java, содержит символьные ссылки на файлы, которые процесс имеет открытый. Если один из этих файлов удален, символьная ссылка свисает, но это может все еще быть открыто для чтения.

Это позволит Вам извлекать все строки журнала из процесса. Выполненный

tail -c +$(($(zcat log.txt.gz | wc -c) + 1)) -f more-log.txt

пока процесс Java не умер.

9
09.03.2018, 02:32
1 ответ

Если Вы не возражаете вводить непосредственно выше границы области (который необходимо сделать так или иначе для любой панели, которая не касается строки состояния), можно вызвать tmux использовать меньшее окно:

set force-height <single_window_height - 1>

Однако это только - установка на окно и действует как максимальный предел высоты следовательно, он не сделает то, что Вы хотите при изменении содержания терминала dimesions.

2
27.01.2020, 20:08

Теги

Похожие вопросы