Как подключиться по SSH в определенный каталог в Linux |

Как подключиться по SSH в определенный каталог в Linux

Мануал
Вы когда-нибудь были в ситуации, когда вы хотите подключиться к удаленному серверу по SSH и сразу перейти в каталог и продолжить работу в интерактивном режиме?
Вы на правильном пути!
В этом кратком руководстве описывается, как напрямую подключить SSH к определенному каталогу удаленной системы Linux.
Не только подключение по SSH в конкретный каталог, вы можете выполнить любую команду сразу после подключения к SSH-серверу, как описано в этом руководстве. Это не так сложно, как вы думаете

Доступ по SSH в определенный каталог удаленной системы

Прежде чем я знал этот метод, я обычно сначала SSH к удаленной удаленной системе, используя команду:
$ ssh user@remote-system
А затем переходил в каталог, как показано ниже:
$ cd <some-directory>
Однако вам не нужно использовать две отдельные команды.

Вы можете объединить эти команды и упростить задачу с помощью одной команды.

Посмотрите на следующий пример.

$ ssh -t itsecforu@192.168.225.22 'cd /home/itsecforu ; bash'

Приведенная выше команда подключит SSH к удаленной системе (192.168.225.22) и сразу перейдет в каталог с именем /home/itsecforu/, оставив себя в приглашении.

Здесь флаг -t используется для принудительного выделения псевдо-терминала, что необходимо, или для интерактивной оболочки.

Вы также можете использовать эту команду:

$ ssh -t itsecforu@192.168.225.22 'cd /home/itsecforu ; exec bash'

или

$ ssh -t itsecforu@192.168.225.22 'cd /home/itsecforu && exec bash -l'

Здесь флаг -l устанавливает bash в качестве оболочки для входа.

В приведенном выше примере я использовал bash в последнем аргументе.

Это оболочка по умолчанию в моей удаленной системе.

Если вы не знаете тип оболочки в удаленной системе, используйте следующую команду:

$ ssh -t itsecforu@192.168.225.22 'cd /home/sk/itsecforu && exec $SHELL'
Как я уже сказал, это не только для смена каталога cd в каталог после подключения к удаленной системе.
Вы можете использовать этот трюк для запуска других команд.
Например, следующая команда попадет в каталог home /home/itsecoforu, а затем выполнит команду« uname -a ».
$ ssh -t sk@192.168.225.22 'cd /home/itsecforu && uname -a && exec $SHELL'

Кроме того, вы можете добавить команду(ы), которую вы хотели выполнить после подключения к SSH-серверу, в файле .bash_profile удаленной системы.

Отредактируйте файл .bash_profile:

 $ nano ~/.bash_profile

Добавьте команду (ы) одну за другой. В моем случае я добавляю следующую строку:

cd /home/itsecforu >& /dev/null

Сохраните и закройте файл. Наконец, выполните следующую команду, чтобы обновить изменения.

 $ source ~/.bash_profile

Обратите внимание, что вы должны добавить эту строку в файл .bash_profile или .bashrc удаленной системы, а не в вашей локальной системе.

С этого момента каждый раз, когда вы входите в систему (по SSH или напрямую), команда cd будет выполняться, и вы автоматически попадете в каталог «/home/itsecforu».

 

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий