Aperçu
tmux new-session est une fonctionnalité clé de tmux qui permet de maintenir les sessions de terminal de manière permanente et de gérer le travail en le divisant en plusieurs fenêtres et panneaux. Cette commande vous permet de créer un nouvel espace de travail et de vous y connecter ou de vous en détacher selon vos besoins.
Caractéristiques principales
- Créer une nouvelle session tmux
- Possibilité de nommer de manière unique la session
- Démarrer la session en arrière-plan (detach)
- Définir le nom de la fenêtre initiale et le répertoire de démarrage
- Option pour se connecter si la session existe déjà
Options principales
Voici les options couramment utilisées avec la commande tmux new-session.
Création et gestion de session
Commande générée :
Essayez de combiner les commandes.
Description:
`tmux new-session` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Exemples d'utilisation
Voici divers exemples d'utilisation de la commande tmux new-session.
Création de session de base
tmux new-session
Dans sa forme la plus basique, crée une nouvelle session tmux sans nom et s'y connecte immédiatement.
Création de session nommée
tmux new-session -s my_session
Crée une nouvelle session tmux nommée my_session. Vous pourrez vous reconnecter à cette session plus tard en utilisant ce nom.
Création de session en arrière-plan
tmux new-session -s dev_work -d
Crée une session nommée dev_work, mais la détache immédiatement (-d) pour l'exécuter en arrière-plan. Le terminal actuel reste inchangé.
Démarrer une session dans un répertoire spécifique
tmux new-session -s project_alpha -c /home/user/projects/alpha
Crée une session nommée project_alpha et la démarre dans le répertoire /home/user/projects/alpha.
Se connecter si la session existe, sinon la créer
tmux new-session -A -s my_session
Si une session nommée my_session existe déjà, elle s'y connecte ; sinon, elle en crée une nouvelle. Cela simplifie le flux de travail de gestion des sessions.
Exécuter une commande initiale lors de la création de session
tmux new-session -s htop_monitor 'htop'
Crée une session nommée htop_monitor et exécute la commande htop dans la première fenêtre.
Installation
tmux n'est pas inclus par défaut dans la plupart des distributions Linux, vous devez donc l'installer en utilisant les commandes suivantes.
Debian/Ubuntu
sudo apt update && sudo apt install tmux
Installe tmux en utilisant le gestionnaire de paquets APT.
CentOS/RHEL/Fedora
sudo yum install tmux
# ou
sudo dnf install tmux
Installe tmux en utilisant le gestionnaire de paquets YUM ou DNF.
Arch Linux
sudo pacman -S tmux
Installe tmux en utilisant le gestionnaire de paquets Pacman.
Conseils et précautions
Voici des conseils et précautions pour utiliser la commande tmux new-session plus efficacement.
Importance de nommer les sessions
Lorsque vous gérez plusieurs sessions, l'utilisation de l'option -s pour attribuer des noms significatifs réduit la confusion et améliore l'efficacité du travail. (Ex: dev, prod, monitoring)
- Gestion de session facilitée par des noms clairs
- Reconnexion facile avec tmux attach -t <nom>
Utilisation des sessions en arrière-plan
L'utilisation de l'option -d pour démarrer une session en arrière-plan permet de maintenir la session même si le terminal est fermé, ce qui est utile pour les tâches de longue durée. Vous pouvez vous reconnecter plus tard avec tmux attach -t <nom>.
- Maintien du travail même en cas de déconnexion du serveur
- Exécution simultanée de plusieurs tâches en arrière-plan
Exécution de commandes initiales
Vous pouvez spécifier une commande à exécuter comme dernier argument lors de la création d'une session. C'est pratique lorsque vous devez lancer immédiatement une application ou un script spécifique.
- Ex: tmux new-session -s my_app 'python app.py'
- Démarrage des services nécessaires en même temps que la session
Connexion/Création automatique de session (-A)
L'option -A est une fonctionnalité pratique qui se connecte à une session existante ou en crée une nouvelle si elle n'existe pas. Elle peut être utile dans les scripts ou les environnements automatisés.
- Évite la vérification de l'existence de la session
- Garantit un accès stable à la session dans les scripts