На этот вопрос уже есть ответ здесь:
У меня есть хост, который я часто использую ssh
в. Но я не хочу входить в него снова и снова. Должен ли я использовать для этого переменную окружения или есть способ лучше?
Я бы не возражал против обобщенного решения по сохранению часто используемых переменных, существующих вне одного сеанса bash.
Переменные среды в целях связывающейся информации к нескольким командам/процессам, которые Вы запускаете в оболочке, которая управляет, или процессы ожидают быть там в среде. Обычно такие переменные включают опции, такой как LESS
переменная, передающая часто используемые опции less
пейджер, PERL5LIB
для нахождения модулей жемчуга в нестандартных местоположениях, LC_LANG
связываться, который язык команда должен использовать для вывода.
Если URL для Вашего собственного использования с определенной командой, используйте псевдоним такой как alias au='firefox https://askubuntu.com
или функция такой как open_url(){ firefox "$@" }
открыть произвольный URL, который Вы обеспечиваете на командной строке как позиционный параметр к функции.
В определенных случаях такой как ssh
, можно определить свойства соединения в конфигурационных файлах, как объяснено в ответе Lekensteyn:
определить ~/.ssh/config
файл со следующим содержанием
Host meh
HostName meh.example.com
User admin
Port 1234
IdentityFile ~/.ssh/id_rsa
использовать ssh meh
соединяться с хостом с помощью файла конфигурации.
Я предложил бы комбинировать ответы Sergiy и Lewis для максимальной эффективности лени:
Сначала создайте запись хоста для ssh
:
определить ~/.ssh/config
файл со следующим содержанием
Host meh
HostName meh.example.com
User admin
Port 1234
IdentityFile ~/.ssh/id_rsa
Теперь ssh meh
работы, но это могло все еще быть довольно длинно. Существует автозавершение (после того, как ssh
[Пробел]), но его все еще очень много для ввода.
Так позволяет, также определяют alias
:
Отредактируйте Ваш .bashrc
в Вашем локальном корневом каталоге. Добавьте псевдоним как:
alias meh='ssh meh'
Теперь можно соединиться с "meh.example.com" путем простого ввода meh
в Вашем окне терминала. Если вместо "meh" Вы хотите использовать более длинную строку, можно на самом деле использовать [Вкладка] ключ к автоматическому заполнению.
Или если Вы действительно ленивы, просто определяете отдельный символ как псевдоним:
alias m='ssh meh'
Так, если Вы, которых тип m и хит Вводят/Возвращают, Ваше соединение SSH, сразу запустите!
Также я предложил бы создать псевдоним.
Отредактируйте Ваш .bashrc
(или возможно .profile
или подобный файл) в Вашем корневом каталоге. Добавьте несколько псевдонимов как:
alias go='ssh url1'
alias go2='ssh url2'
Затем повторно войдите в систему/повторно подключите и войдите go
или go2
.
Я обычно просто создаю a .sh
который содержит команду ssh. Например:
# file name: mywebsite-live.sh
ssh username@123.123.123.123 # or whatever the domain is.
И затем выполнять его я просто делаю ./mywebsite-live.sh
Я понимаю, что это - вероятно, довольно дрянное решение, но это работает на меня, и надежда состоит в том, что это могло бы работать на кого-то еще также.
Еще одна опция состоит в том, чтобы использовать функции истории оболочки. Вы можете Ctrl-r в ударе и вводить уникальную подстроку прошлого раза Вы ssh'ed к тому месту. Если нет никакой уникальной подстроки, можно просто использовать то, что квалифицирует лучше всего как редкая подстрока, и просмотрите записи истории путем повторного нажатия Ctr-r, пока Вы не добираетесь до него. Например, Вы могли бы ввести Ctrl-r и "обезьян" или "codemonkeys" или "odemon" или "kong" и добраться
ssh kong@codemonkeys.some-server.com
от последнего, и надо надеяться только время Вы ввели то целое.
С функциями истории оболочки нет действительно никакой причины ввести любую долгую команду несколько раз.