Как создать меню выбора сеанса в Tmux?

Как можно изменить скрипт .bashrc, чтобы при каждом новом подключении по SSH предлагалось меню выбора для создания новой сессии или подключения к уже существующей сессии?
  • 2 октября 2023 г. 3:57
Ответы на вопрос 3
Для создания меню выбора сеанса в Tmux вы можете использовать скрипт на языке shell. Вот пример скрипта, который может помочь вам создать такое меню:

```bash
#!/bin/bash

# Основной код скрипта

# Получить список всех сеансов Tmux
tmux_list=$(tmux list-sessions -F "#S")

# Выбор сеанса
PS3="Выберите сеанс (или введите 'новая' для создания нового): "
options=("новая" ${tmux_list[@]})

select opt in "${options[@]}"
do
    case $opt in
        "новая")
            # Создать новую сессию
            read -p "Введите имя новой сессии: " session_name
            tmux new-session -d -s $session_name
            tmux attach-session -t $session_name
            break
            ;;
        *)  
            # Подключиться к существующей сессии
            tmux attach-session -t $opt
            break
            ;;
    esac
done
```

Чтобы изменить скрипт .bashrc для предложения такого меню при каждом новом подключении по SSH, вам необходимо добавить вызов этого скрипта в .bashrc. Вот пример того, как это можно сделать:

1. Откройте файл .bashrc в текстовом редакторе с помощью команды:
   ```
   nano ~/.bashrc
   ```
2. Перейдите вниз файла и добавьте следующую строку перед строкой "if [ "$color_prompt" = yes ]; then":
   ```
   bash /путь/к/вашему/скрипту.sh
   ```
   Здесь "/путь/к/вашему/скрипту.sh" - это путь к вашему скрипту меню.
3. Сохраните и закройте файл.

Теперь, при каждом новом подключении по SSH, вы будете получать меню выбора для создания новой сессии или подключения к уже существующей сессии в Tmux.
Выводите сообщение выбора с помощью команды "echo", а затем используйте оператор "case" для определения условий. 
 Используйте команду "echo" для выведения сообщения выбора. Затем воспользуйтесь оператором "case" для определения условий.
Похожие вопросы