Cette solution est un peu hackish, mais je pense qu'elle fera ce que vous cherchez. Vous aurez besoin xdotool
et wmctrl
installé pour que cela fonctionne.
Vous devez d'abord éditer votre ~/.bashrc
fichier car par défaut le terminal réinitialise son titre après chaque ligne, rendant le titre de la ligne de commande inutile.
Juste après: xterm*|rxvt*)
Remplacer: PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
Avec: PS1="${debian_chroot:+($debian_chroot)}\u@\h \w\a$ "
Ensuite, nous allons créer un ssh
script personnalisé appelé ce que vous voulez, mais pour cette réponse, j'appellerai le mien tab-ssh
. Ouvrez un éditeur de texte et enregistrez les éléments suivants sous tab-ssh
:
#!/usr/bin/env bash
WID=$(xprop -root | grep "_NET_ACTIVE_WINDOW(WINDOW)"| awk '{print $5}')
xdotool windowfocus $WID
xdotool key ctrl+shift+t
wmctrl -i -a $WID
sleep 1
title=$(echo "$*" | sed s/.*@//g)
xdotool type --delay 1 --clearmodifiers 'echo -en "\033]0;"'"${title}"'"\a"'
xdotool key Return
sleep 1
xdotool type --delay 1 --clearmodifiers "ssh $*"
xdotool key Return
Rendez-le ensuite exécutable:
chmod +x tab-ssh
Maintenant, en supposant que vous utilisez bash
et gnome-terminal
, l'exécution du script devrait ouvrir un nouvel onglet, le renommer et démarrer la ssh
session. Par exemple:
tab-ssh username@0.0.0.0
ouvrira un nouvel onglet, le renommera (c'est-à 0.0.0.0
-dire tout ce qui suit le signe "@"), puis exécutera username@0.0.0.0
.
Créé en utilisant ce qui suit: