Как получить команды, выпущенные в сеансе ssh

Мне нужно перечислить все команды, выполненные в «сеансе ssh». Я использую несколько сеансов ssh для входа на удаленные серверы. Поэтому, когда я выхожу из одного сеанса, мне нужно получить команды, выполненные в этом сеансе.

Есть ли какой-нибудь вариант для этого?

Если вы используете bash на удаленных серверах, он сохраняет историю для вас, и вы можете получить эту историю с помощью команды history .

Если вы редактируете файл ~ / .bash_profile, чтобы включить следующую строку:

 export HISTTIMEFORMAT="%h/%d -- %H:%M:%S " 

Ваша история также будет иметь отметки времени (чтобы было легче определить, что вы натолкнули на текущую сессию, и что такое древняя история).

Когда bash выключается, он запускает ваш скрипт ~/.bash_logut . Если вы создадите последнюю строку этого скрипта:

 history 

Последнее, что вы понемете на вас, поскольку вы закрываете соединение, будет вашей историей – не только с текущего сеанса, к сожалению, но временные метки помогут вам понять, какие команды были с текущего сеанса и какие были старые ,

Если вы не против потери истории на удаленных машинах между сеансами, вы можете добавить

 unset HISTFILE 

К вашим сценариям входа. Когда HISTFILE не установлен, bash не сохраняет историю в файл. Это будет означать, что history которая запускается при выходе из системы, может отображать только текущую сессию.

Используя PuTTY (или другие клиенты ssh), вы можете настроить его для «сохранения» всей информации о сеансе.

В PuTTY:

 Session --> Login --> Session Login --> All session output 

Другим вариантом может быть выполнение команды

 # history >> history.log 

Перед тем как покинуть сеанс ssh и загрузите файл history.log

Это будет список последних выполненных команд.

Вы даже можете сообщить истории, сколько команд запомнить

 # vi ~/.bash_profile HISTSIZE=450 HISTFILESIZE=450 

надеюсь, это поможет

Второе предложение Гонсало Мурильо использовать команду истории для захвата только того, что вы набрали (не выход команды), будет работать.

Если вы хотите создать список команд перед подключением к любому из серверов, вы можете легко с помощью python с помощью python автоматизировать все это, если вам не нужно какое-либо взаимодействие.

  • Как SSH на localhost без пароля?
  • Может ли PuTTY открыть ссылку SSH, аналогичную терминалу для Macintosh?
  • Разрешить группе UNIX доступ только к одному файлу через SSH
  • Мульти-хост SSH-соединение
  • Смарт-карты для хранения ключей gpg / ssh (Linux) - что мне нужно?
  • Ubuntu IPTables позволяет разрешить только 1 страну
  • Отключить вход SSH через пароль для каждого пользователя?
  • Что именно определяет, если фоновая работа убита, когда оболочка завершена или убита?
  • Как выполнять команды на сервере SSH в C #?
  • Разрешение отклонено (публикация) при доступе SSH к экземпляру Amazon EC2
  • Как сохранить удаленную задачу после запуска в консоли SSH?
  • Interesting Posts

    SignalR + отправка сообщения в концентратор через метод действия

    Как обновить значение, учитывая ключ в jash hashmap?

    Границы, не показанные в Firefox с граничным коллапсом на таблице, позиция: относительная по tbody или фоновый цвет на ячейке

    Регулярное выражение для соответствия внешним скобкам

    Как преобразовать A ] в B ], если A и B являются монадами?

    Как вы поворачиваете двухмерный массив?

    В чем разница между System.Speech.Recognition и Microsoft.Speech.Recognition?

    Android Studio: как удалить APK (или выполнить команду adb) автоматически до запуска или отладки?

    попытка повторного открытия уже закрытого объекта: SQLiteDatabase

    Как использовать Objective-C #define из Swift

    Как использовать MapView в android с помощью google map V2?

    Как настроить свойства конвертера для каждой строки данных?

    Как удалить выбранный DataGridViewRow и обновить связанную таблицу базы данных?

    Получить номер телефона входящего вызова в Android

    Категория CLLocation для расчета подшипника с функцией Haversine

    Давайте будем гением компьютера.