Я знаю, что могу запустить tmux -V
, чтобы найти версию tmux
, которая находится в моем PATH
, но как я могу получить версию tmux
, а это сейчас работает?Как узнать текущую версию tmux?
ответ
$ ps -u | grep tmux
чем пробег tmux по этому пути с -V
(столица V).
Чтобы найти актуальную версию tmux, который работает, вы должны найти PID в tmux:
pgrep tmux
С помощью этой информации, вы можете проверить версию, запустив:
lsof -p $tmuxPID | grep REG | grep -i -e deleted -e "tmux$"
Если рядом с указанным файлом tmux нет (удалено), вы можете просто запустить этот файл с помощью -V
.
Если в результате возникают файлы, которые являются «(удалены)», вы используете старую, удаленную версию. Если вы находитесь на Linux, вы можете выяснить, что это такое запустив:
/proc/$tmuxPID/exe -V`
Если вы на OS X, вы застряли с тем, что информация находится в пути к имени файла, возможно, что-то вроде Cellar/tmux/<version number>/bin/tmux
.
Вы можете объединить многие из этих шагов в следующем однострочника:
for tmuxPID in $(pgrep tmux); do lsof -p $tmuxPID | grep REG | grep -i -e deleted -e "tmux$"; done
Или, если вы находитесь на Linux, это всегда работает:
for tmuxPID in $(pgrep tmux); do /proc/$tmuxPID/exe -V; done
Как было отмечено в комментарии, tmux -V
возвращает версия:
$ tmux -V
# tmux 1.8
Испытано на Centos 7 и OSX 10.11.5.
Это должен быть выбранный ответ. Также проверено это на Amazon Linux –
Я не думаю, что это отвечает на вопрос.Я не уверен, почему он так высоко оценен. Эта команда просто возвращает версию любого tmux на моем пути. – arman
Это потому, что это появляется как первый результат * Как получить tmux версию *. –
Следует отметить, что это не сработает, если «tmux» был обновлен с момента запуска данного процесса. –
В MacOsX У меня есть ошибка 'ps: параметр требует аргумента - u' – alexserver
просто запустите' tmux -V', протестированный на Ubuntu и OSX –