Вступление
Cheat - это программа Python, основанная на командной строке, которая позволяет системным администраторам просматривать и хранить полезные шпаргалки. Он извлекает примеры выбранной команды в виде простого текста, чтобы напомнить пользователю о параметрах, аргументах или общих целях. Чит идеально подходит для «команд, которые вы часто используете, но недостаточно часто, чтобы запомнить».
Листы - это небольшие переносимые текстовые файлы, которые можно копировать в несколько систем Linux / Unix; они вызываются и просматриваются как любая другая программа командной строки. Предоставляются базовые листы для распространенных программ, но вы также можете добавлять новые пользовательские листы.
Предпосылки
Чтобы следовать этому уроку, вам понадобится:
-
Одна капля Ubuntu 14.04
-
Пользователь не-root, который вы можете настроить, следуя https://www.digitalocean.com/community/tutorials/how-to-add-and-delete-users-on-an-ubuntu-14-04 -vps [Как добавлять и удалять пользователей в Ubuntu 14.04 VPS] учебник
Шаг 1 - Установка Cheat
Перед установкой Cheat необходимо убедиться, что в системе все обновлено.
sudo apt-get update && sudo apt-get upgrade
Подтвердите, введя + y +
для любых запросов на этом шаге.
Установка Cheat лучше всего делать с помощью менеджера пакетов Python Pip, поэтому установите Pip дальше.
sudo apt-get install python-pip
Чит сам по себе зависит только от двух пакетов Python, оба из которых удобно включены в пакет Pip’s Cheat. Наконец, установите чит.
sudo pip install cheat
Успешная установка Cheat выдаст следующие строки:
sudo pip install cheat output
Successfully installed cheat docopt pygments
Cleaning up...
Мы можем подтвердить, что Cheat установлен и работает, запустив его с опцией + -v +
.
cheat -v
Это выводит версию Cheat, которую мы установили.
чит -v вывод
cheat 2.1.10
Шаг 2 - Настройка текстового редактора
Прежде чем мы сможем приступить к созданию собственных шпаргалок, Cheat должен знать, какой текстовый редактор мы хотели бы использовать для редактирования листов по умолчанию. Чтобы сделать это, мы должны создать и установить переменную среды с именем + EDITOR +
. Для получения дополнительной информации о переменных оболочки и среды вы можете прочитать https://www.digitalocean.com/community/tutorials/how-to-add-and-delete-users-on-an-ubuntu-14-04-vps [Как читать и устанавливать переменные среды и оболочки].
Поскольку nano уже установлен в Ubuntu и, как правило, его легко освоить, мы установим его в качестве предпочтительного текстового редактора с помощью приведенной ниже команды. Однако вместо этого вы можете использовать vim, emacs или ваш любимый текстовый редактор.
export EDITOR="/usr/bin/nano"
Мы можем подтвердить это успешно, набрав:
printenv EDITOR
Это выведет содержимое новой переменной окружения + $ EDITOR +
:
вывод редактора printenv
/usr/bin/nano
Чтобы сделать это изменение постоянным и постоянным во всех будущих сеансах оболочки, вы должны добавить объявление переменной среды в ваш файл + .bashrc +
. Это один из нескольких файлов, которые запускаются в начале сеанса оболочки bash.
Откройте этот файл для редактирования:
nano ~/.bashrc
Затем добавьте ту же команду экспорта:
~ / .Bashrc
. . .
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth
. . .
Сохраните и выйдите из файла, нажав + CTRL + X +
, а затем + Y +
, а затем + ENTER +
.
Шаг 3 - Настройка читов (необязательно)
На этом этапе мы настроим Cheat, включив подсветку синтаксиса и автозаполнение командной строки.
При использовании эмулятора терминала, который имеет цветовую поддержку, вы можете включить подсветку синтаксиса для ваших листов, экспортируя переменную среды оболочки с именем + CHEATCOLORS +
, определенную как true:
export CHEATCOLORS=true
Теперь, когда вы извлекаете шпаргалки, они будут отформатированы с цветной подсветкой синтаксиса. Если вам нравится эта функция, вы можете сделать ее постоянной и постоянной в сеансах оболочки, добавив команду экспорта в файл + .bashrc +
.
Снова откройте файл + .bashrc +
:
nano ~/.bashrc
Затем добавьте новую переменную + CHEAT COLORS +
ниже переменной + EDITOR
:
~ / .Bashrc
. . .
# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac
export EDITOR="/usr/bin/nano"
# don't put duplicate lines or lines starting with space in the history
. . .
Сохраните и закройте файл.
Далее, чтобы включить автозаполнение командной строки, нам нужно поместить скрипт в каталог + / etc / bash_completion.d / +
. Перейдите в этот каталог.
cd /etc/bash_completion.d/
Затем загрузите нужный нам скрипт со страницы проекта Cheat GitHub.
sudo wget https://raw.githubusercontent.com/chrisallenlane/cheat/master/cheat/autocompletion/cheat.bash
Теперь введите + bash +
в текущую оболочку, чтобы получить изменения.
bash
Автозаполнение вкладки для Cheat теперь включено. Если вы наберете + cheat
, а затем пробел, дважды нажмите клавишу` + TAB`, чтобы получить список команд.
чит-вкладка автозаполнения вывода
cheat
7z asciiart chown df du
grep indent jrnl mkdir netstat
. . .
Шаг 4 - Запуск Чит
Чтобы запустить Cheat в его самой простой форме, вы называете его как любую другую команду, за которой следует имя существующего шпаргалки.
Вот пример того, как сделать это с одним из листов по умолчанию, который входит в Cheat, для команды + tail +
(которая выводит последние несколько строк файла).
cheat tail
Затем вы увидите этот вывод:
чит-выход
# To show the last 10 lines of file
tail file
# To show the last N lines of file
tail -n N file
# To show the last lines of file starting with the Nth
tail -n +N file
# To show the last N bytes of file
tail -c N file
# To show the last 10 lines of file and to wait for file to grow
tail -f file
Чтобы увидеть, какие другие существующие чит-листы доступны нам, запустите Cheat с опцией + -l +
.
cheat -l
Здесь перечислены все доступные листы и их расположение на сервере.
Шаг 5 - Создание и редактирование шпаргалок
Хотя базовые предварительные таблицы, включенные в Cheat, полезны и разнообразны, они не включают все команды или программы оболочки, доступные нам. Реальная выгода, которую мы можем получить от Сундука, прибывает с добавлением Ваших собственных пользовательских листов.
Например, нет листа для сетевой программы + ping +
:
cheat ping
чит-пинг на выходе
No cheatsheet found for ping
Давайте сделаем один пример того, как создать и добавить новый лист. Во-первых, снова вызовите Cheat в командной строке, на этот раз за которым следует + -e +
и имя листа, для которого мы его создаем.
cheat -e ping
Cheat создаст и откроет соответствующий файл для редактирования, используя переменную + $ EDITOR +
, которую мы установили ранее.
Добавьте полезный пример команды ping в начало этого нового листа, добавив комментарий (обозначенный + # +
), который объясняет, что команда делает при вводе. Вот одна из таких команд, которую вы можете ввести в файл:
~ / .Cheat / пинг
# ping a host with a total count of 15 packets overall.
ping -c 15 www.example.com
Сохраните и выйдите из файла, как и раньше. Теперь давайте проверим новый лист, снова запустив + cheat ping +
.
cheat ping
На этот раз мы увидим только что добавленную шпаргалку.
чит-пинг на выходе
# ping a host with a total count of 15 packets overall.
ping -c 15 www.example.com
Чтобы изменить существующий лист, мы можем снова использовать опцию + -e +
.
cheat -e ping
Пинг-лист открыт, и мы можем добавить больше примеров или контента. Например, мы можем добавить следующее:
~ / .Cheat / пинг
# ping a host with a total count of 15 packets overall.
ping -c 15 www.example.com
# ping a host with a total count of 15 packets overall, one every .5 seconds (faster ping).
ping -c 15 -i .5 www.example.com
Шаг 6 - Поиск шпаргалок
Cheat имеет встроенную функцию поиска, активируемую опцией + -s +
. Это подберет любое и все вхождения текста, которым вы его предоставляете. Например:
cheat -s packets
Эта команда выведет все строки, содержащие термин «пакеты» и лист, с которого они происходят.
чит-пакеты
nmap:
# --min-rate=X => min X packets / sec
ping:
# ping a host with a total count of 15 packets overall.
# ping a host with a total count of 15 packets overall, one every .5 seconds (faster ping).
route:
# To add a default route (which will be used if no other route matches). All packets using this route will be gatewayed through "mango-gw". The device which will actually be used for that route depends on how we can reach "mango-gw" - the static route to "mango-gw" will have to be set up before.
tcpdump:
# and other packets being transmitted or received over a network. (cf Wikipedia).
. . .
Заключение
Поскольку все, что отображает Cheat, представляют собой простой текст и направляются через стандартный вывод оболочки, мы можем использовать любые команды обработки текста (например, + grep +
) с ним. Вы можете прочитать Using Grep и регулярные выражения для поиска текстовых шаблонов. в Linux руководство для получения дополнительной информации о + grep +
.
Кроме того, система контроля версий, такая как Git с GitHub, идеально подходит для централизованного хранения ваших пользовательских шпаргалок, поэтому вы можете получить их на нескольких платформах с помощью клонирования репозитория. Лист классифицируется как custom, если вы добавили его, изменили его или создали самостоятельно с помощью Cheat.
Все пользовательские шпаргалки хранятся в домашнем каталоге вашего пользователя Linux, внутри скрытой папки с именем + .cheat +
. Вы можете найти это местоположение, запустив + cheat -d +
, который выведет две директории: первая - это расположение ваших пользовательских листов, а вторая - это расположение листов по умолчанию, которые вы получаете с Cheat при установке.
Чтобы получить доступ к вашей библиотеке пользовательских листов в других системах, вам нужно только скопировать в них эту папку + .cheat +
. Шпаргалки представляют собой небольшие текстовые файлы, поэтому они идеально подходят для отслеживания с контролем версий. Чтобы получить полное решение, позволяющее сделать ваши чит-листы и файлы конфигурации доступными в любое время, вы можете прочитать https://www.digitalocean.com/community/tutorials/how-to-use-git-to-manage-your-user -configuration-files-on-a-linux-vps [Как использовать Git для управления вашими файлами конфигурации пользователя на VPS Linux].