J'ai quelques serveurs distants auxquels je me connecte via le terminal. Les serveurs n'ont pas de domaine, seulement une adresse IP qui est difficile à retenir lorsque j'en ai obtenu quelques-uns.
Existe-t-il un moyen de stocker de manière permanente des valeurs dans le terminal, afin que je puisse faire ce qui suit?
server1 = 111.222.111.222
Et tapez des commandes comme:
ssh root@server1
au lieu de:
ssh [email protected]
la source
Bien sûr, pour votre problème particulier, vous souhaitez suivre les conseils @chaos et @steeldriver, mais dans le cas général, afin de "stocker en permanence les valeurs dans le terminal", vous cherchez à shell les variables. La façon de les définir dépendra de votre shell (je suppose que
echo $SHELL
cela fournira les informations pertinentes).Si par "en permanence" vous voulez dire "tant que je ne
export server1=111.222.111.222
quitte pas cette session de terminal", alors vous pouvez simplement utiliser la commande si vous utilisez unbash
shell basé sur (setenv server1 111.222.111.222
pour uncsh/tcsh
shell basé sur, si je me souviens bien). Ensuite , vous pouvez accéder à votre variable en préfixant avec$
:ssh root@$server1
.Si par "en permanence" vous voulez dire "à chaque fois que je lance un nouveau terminal", alors vous devrez définir votre variable dans l'un des fichiers init du shell. Par exemple,
$HOME/.bashrc
pour lesbash
shells basés sur, ou$HOME/.cshrc
- en utilisant probablement la même syntaxe que celle mentionnée dans le paragraphe précédent. Notez que vous devrez source le fichier init (par exemplesource $HOME/.bashrc
ou ouvrir un nouveau shell pour que les changements soient pris en compte.NB: Répondre de mémoire, peut nécessiter quelques petits ajustements.
la source
Pas une réponse directe à la question (le chaos et le steeldriver ont déjà fourni ce que je pense être les meilleures solutions littérales), mais si vous n'avez besoin de ssh qu'au seul utilisateur à la même adresse dans la majorité des cas, alors regardez l'édition le
.bash_aliases
fichier dans votre répertoire personnel devrait être utile, car vous pouvez créer un alias pour la commande de terminal entière.la source
Les réponses spécifiques sont très bonnes.
En général, cependant, si vous voulez que certaines choses soient définies / configurées dans un shell, écrivez simplement un script pour le faire, puis exécutez-le avec
source
ou.
quand vous voulez que cette configuration soit effective.Si c'est quelque chose que vous voulez tout le temps, vous pouvez le trouver dans .profile (pour les shells de connexion) ou dans .bashrc pour tous les shells (si vous utilisez bash).
Avec une approche comme celle-ci, vous pouvez avoir plusieurs scripts pour configurer différents environnements de travail selon vos besoins tant que vous vous assurez qu'ils ne se marchent pas les uns sur les autres si vous appelez l'un d'entre eux après en avoir appelé un autre en premier.
la source