Доступ к истории вашего терминала из любого места с помощью Bashhub
Как вы уже знаете, команды, которые вы запускаете в своей оболочке, будут сохранены в файле .bash_history, и вы сможете просмотреть их в любое время, используя команду history или используя UP/ Клавиши со стрелками вниз или обратный поиск с помощью комбинации клавиш CTRL+R в Терминале. Однако вы можете просматривать, получать доступ и повторно запускать их только с того же компьютера. Что делать, если вы хотите получить доступ к истории своего Терминала из другой системы в сети? Без проблем! Здесь на помощь приходит утилита "Bashhub". Bashhub — это веб-сервис, где вы можете сохранять все команды и получать к ним доступ из любого места. Bashhub сохраняет все введенные команды во всех сеансах и системах, поэтому вы можете получить к ним доступ из любого места. Проще говоря, вся ваша история BASH будет доступна в облаке, вся история Bash индексируется и доступна для поиска! Bashhub полностью бесплатен и имеет открытый исходный код.
Все команды будут храниться в базе данных Bashhub, которая зашифрована с использованием шифрования уровня хранения через LUKS. Bashhub сгенерирует уникальный идентификационный токен для каждого пользователя. Этот токен является обязательным для выполнения любых действий от имени пользователя по команде API. Команды, записанные от имени пользователя, доступны только с использованием токена аутентификации этого пользователя. В настоящее время нет возможности поделиться этими командами, и они не являются общедоступными. Также Bashhub позволяет игнорировать некоторые команды, содержащие конфиденциальную информацию, например пароль пользователя. Вы можете безопасно игнорировать такие команды, чтобы Bashhub не записывал их, чтобы полностью отключить запись в любое время.
Установить Башхаб
Убедитесь, что в вашей системе установлен Python 2.7. Python 2.7 доступен в репозиториях по умолчанию большинства дистрибутивов Linux, поэтому вы можете установить его с помощью менеджера пакетов вашего дистрибутива. Например, выполните следующую команду, чтобы установить Python 2.7 в Debian и его варианты.
sudo apt-get install python2.7
После установки Python 2.7 выполните любую из приведенных ниже команд в зависимости от используемой вами SHELL.
Если ваша оболочка — BASH, введите следующую команду:
curl -OL https://bashhub.com/setup && bash setup
Для Zsh:
curl -OL https://bashhub.com/setup && zsh setup
Через несколько минут вам будет предложено создать новую учетную запись, если у вас ее еще нет. Введите действительный идентификатор электронной почты, имя пользователя и пароль, а также имя вашей системы.
What's your email? sk@senthilkumar.com
What username would you like? sk
What password?
Email: sk@senthilkumar.com Username: sk
Are these correct? [Y/n] y
Registered new user sk
What do you want to call this system? For example Home, File Server, ect. [ubuntuserver]:
Registered a new system ubuntuserver
Should be good to go! Please close and restart your terminal session.
Сделанный! Ваша учетная запись создана на Bashhub. Вы можете получить доступ к своему профилю по адресу https://bashhub.com/<ваше-имя-пользователя>. Bashhub создаст каталог с именем .bashhub, содержащий несколько скриптов и виртуальную среду Python в вашем каталоге $HOME.
Если вы уже являетесь пользователем, введите «n», когда вас спросят: «Вы новый пользователь?» и введите зарегистрированный адрес электронной почты и пароль.
Закройте и перезапустите терминал, чтобы начать запись истории вашего терминала.
Доступ к истории вашего терминала из любого места с помощью Bashhub
Теперь запустите любые случайные команды, чтобы проверить, действительно ли это работает.
Я выполнил следующие команды:
clear
pwd
uname -a
ls -l
touch test.txt
Теперь пришло время проверить, какие команды я ввел.
Для этого запустите:
bh
Пример вывода:
Эта команда по умолчанию отображает последние 100 команд. Вы можете переопределить ограничение по умолчанию, используя флаг «-n».
Чтобы отобразить только последние 10 команд, запустите:
bh -n 10
Отображать команды, используя определенный термин
Вы также можете отобразить конкретную команду, используя определенный термин, например «ls».
bh -n 10 "ls"
Если вы хотите выполнить поиск определенной команды по поисковому запросу и одновременно запустить ее, используйте флаг "-i", как показано ниже.
bh -i "ls"
Если вы запускали команду более одного раза, выберите из списка команду, которую хотите запустить, и нажмите Enter.
Как вы видите выше, я выполнил команду «ls» три раза.
Отображение списка команд, выполняемых в каталоге
Чтобы отобразить список последних команд, которые вы выполнили в текущем рабочем каталоге, используйте флаг «-d».
bh -d
Bashhub отобразит последние использованные команды.
Интерактивный поиск
Другая примечательная особенность Bashhub — интерактивный поиск. Он похож на обратный поиск: его можно вызвать, нажав клавиши bh -i или ctrl+b.
Давайте сделаем интерактивный поиск.
$ bh -i
(bashhub-i-search): uname
Приведенная выше команда будет искать команду, имеющую строку «uname». Вы можете выполнить интерактивный поиск в текущем рабочем каталоге, используя флаг «-d», как показано ниже.
$ bh -i -d
(bashhub-i-search): ls
Просмотр сведений о команде
С помощью интерактивного поиска вы также можете просмотреть подробную информацию о команде.
Сначала запустите интерактивный поиск:
bh -i
Затем выберите команду из списка и нажмите клавиши «i» или «пробел», чтобы отобразить сведения о выбранной команде.
Удаление команд
Bashhub позволяет вам в любой момент удалить определенную команду (команды) из базы данных Bashhub. Для этого запустите интерактивный поиск:
bh -i "ls"
Выберите команду, которую хотите удалить, и нажмите клавиши «Backspace» или «Delete» на клавиатуре.
Игнорировать определенные команды при записи
Это еще одна полезная функция утилиты Bashhub. Вы можете запретить запись bashhub конкретной команды, содержащей конфиденциальную информацию, такую как имя пользователя или пароль.
Для этого просто добавьте #ignore в конце команды.
Пример :
uname -r #ignore
Вышеуказанная команда «uname -r» не будет записана. Обратите внимание, что если вы уже настроили свою историю на игнорировать пробел, Bash не будет сохранять команды, если запускать их с пробелом в начале этих команд. В этом случае вам не нужно использовать «#ignore».
Отключить команды записи
Если вы хотите, чтобы Bashhub записывал команды, вы можете включить его, выполнив следующую команду:
bashhub off
Команды больше не будут записываться, пока вы не включите эту функцию.
Помните, что по умолчанию это влияет только на текущий сеанс оболочки. Чтобы отключить запись всех сеансов глобально, выполните следующую команду:
bashhub off --global
Чтобы снова включить запись Bashhub. бегать:
bashhub on
Обновить Башхуб
Просто повторите команду установки, чтобы обновить Bashhub. Альтернативно, запустите команду «bashhub update», чтобы обновить его.
Доступ к Bashhub из другой системы
Обратите внимание, вам не обязательно запускать «bh» в той же самой системе. Поскольку все команды хранятся в базе данных Bashhub, вы можете просмотреть всю историю вашего терминала из любой системы. Убедитесь, что вы установили клиент Bashhub в систему и войдите в систему, используя зарегистрированный идентификатор электронной почты и пароль.
Are you a new user? [Y/n] n
Please enter your bashhub credentials
Username: sk
Password:
Проверьте статистику пользователей
bashhub status
Пример вывода:
=== Bashhub Status
https://bashhub.com/sk
Total Commands: 21
Total Sessions: 1
Total Systems: 1
===
Session PID 1154 Started 2 hours ago
Commands In Session: 21
Commands Today: 21
Удалить Башхаб
Если вас беспокоят последствия для конфиденциальности и безопасности, Bashhub не для вас. Вы можете удалить его, удалив следующий каталог из вашей системы.
rm -r ~/.bashhub
Более подробную информацию можно найти в разделе помощи:
$ bashhub
Usage: bashhub [OPTIONS] COMMAND [ARGS]...
Bashhub command line client
Options:
-V, --version Display version
-h, --help Show this message and exit.
Commands:
filter Check if a command is filtered from bashhub.
help Show this message and exit
off Turn off saving commands to Bashhub.
on Turn on saving commands to Bashhub.
save Save a command to Bashhub
setup Run Bashhub user and system setup
status Stats for this session and user
update Update your Bashhub installation
util Misc utils used by Bashhub
version Display version
Ресурс:
- Репозиторий Bashhub на GitHub