Tmux отображает «» в строке состояния

На связанный вопрос в Ask Ubuntu

D означает, что процесс находится в непрерывном спящем режиме, поэтому вы не можете убить его прерыванием

S - для прерывистого сна

+ - это процесс переднего плана

l означает, что он многопоточный

3
05.01.2016, 00:42
2 ответа

https://github.com/tmux/tmux/issues/733#issuecomment-277230881 упоминает, что

сообщение не готово нормально, tmux сообщает вам, что выполнение команды еще не завершено, он отобразит вывод, как только команда завершится

Я видел это после обновления с Ubuntu 16.04 до 16.10 с моим скриптом, который показывает ssh-сервер в формате состояния окна - он мигает при подключении. Фактически, я могу воспроизвести его, просто выполнив

tmux setw -g window-status-current-format '#(echo `tmux display-message -p "#W #{pane_pid}"`)'

, а затем ssh aslkfdsdkljfslkdsajf , он будет мигать при попытке подключения.

Я предполагаю, что extip требует времени, чтобы вернуть результат; что произойдет, если вы замените его сценарием оболочки, который просто выполняет echo 1 или sleep 1; echo 1 ?

(Обратите внимание, что tmux должен кэшировать любые команды после их выполнения хотя бы один раз в этом окне / панели, но если сама команда изменится - как в моем примере выше - он не будет использовать Я отправил отчет об ошибке о том, что в таких случаях команда "не готов" отключена.)

2
27.01.2020, 21:27

Раньше я обманывал это, создавая экземпляр tmux с помощью элементарной display-messageкоманды (, например. "Welcome, $USER..."), что, кажется, дает ему секунду или около того, чтобы запустить внешнее приложение в первый раз.

Конечно, зависит от ваших потребностей. Я запускаю tmux в сценарии своего профиля, но если вы запускаете tmux по запросу, вам может сойти с рук псевдоним...

# /usr/bin/tmux -V
tumx 2.4
# /usr/bin/tmux new-session \; display-message "Welcome, $USER..."
0
27.01.2020, 21:27

Теги

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