Mam kilka zdalnych serwerów, z którymi łączę się przez terminal. Serwery nie mają domeny, tylko adres IP, który trudno zapamiętać, kiedy mam kilka z nich.
Czy istnieje sposób trwałego przechowywania wartości w terminalu, aby móc wykonać następujące czynności?
server1 = 111.222.111.222
I wpisz polecenia takie jak:
ssh root@server1
zamiast:
ssh [email protected]
command-line
ssh
hosts
zwykły
źródło
źródło
Oczywiście w przypadku konkretnego problemu chcesz postępować zgodnie ze wskazówkami @chaos i @steeldriver, ale w ogólnym przypadku, aby „trwale przechowywać wartości w terminalu”, szukasz zmiennych powłoki. Sposób ich ustawienia będzie zależeć od twojej powłoki (myślę, że
echo $SHELL
dostarczy odpowiednich informacji).Jeśli przez „na stałe” masz na myśli „o ile nie wychodzę z tej sesji terminalowej”, możesz po prostu użyć
export server1=111.222.111.222
polecenia, jeśli używaszbash
powłoki opartejsetenv server1 111.222.111.222
na bazie ( dlacsh/tcsh
powłoki opartej na bazie , jeśli dobrze pamiętam). Następnie można uzyskać dostęp do zmiennej poprzedzając go$
:ssh root@$server1
.Jeśli przez „na stałe” masz na myśli „za każdym razem, gdy uruchamiam nowy terminal”, musisz ustawić swoją zmienną w jednym z plików inicjujących powłokę. Np. W
$HOME/.bashrc
przypadkubash
powłok bazowanych lub$HOME/.cshrc
- prawdopodobnie przy użyciu tej samej składni, jak wspomniano w poprzednim akapicie. Pamiętaj, że będziesz musiałsource $HOME/.bashrc
pobrać plik inicjujący (np. Lub otworzyć nową powłokę, aby uwzględnić zmiany.Uwaga: odpowiedź z pamięci może wymagać drobnych korekt.
źródło
Nie jest to bezpośrednia odpowiedź na pytanie (chaos i steeldriver dostarczyły już to, co moim zdaniem byłoby najlepszym dosłownym rozwiązaniem), ale jeśli w większości przypadków potrzebujesz tylko ssh do jednego użytkownika pod jednym adresem, to patrz na edycję
.bash_aliases
plik w katalogu domowym powinny być użyteczne, jak można utworzyć alias dla całej komendy terminala.źródło
Konkretne odpowiedzi są bardzo dobre.
Zasadniczo jednak, jeśli chcesz mieć pewne ustawienia zdefiniowane / skonfigurowane w powłoce, po prostu napisz skrypt, aby to zrobić, a następnie uruchom go za pomocą
source
lub.
kiedy chcesz, aby ta konfiguracja działała.Jeśli jest to coś, czego chcesz cały czas, możesz go pobrać w pliku .profile (dla powłok logowania) lub w .bashrc dla wszystkich powłok (jeśli używasz bash).
Przy takim podejściu możesz mieć wiele skryptów do konfigurowania różnych środowisk roboczych w razie potrzeby, o ile upewnisz się, że nie nadepną one na siebie, jeśli wywołasz jedno z nich po pierwszym wywołaniu innego.
źródło