Как установить и использовать шпаргалки командной строки в Ubuntu 14.04

Вступление

Cheat - это программа Python, основанная на командной строке, которая позволяет системным администраторам просматривать и хранить полезные шпаргалки. Он извлекает примеры выбранной команды в виде простого текста, чтобы напомнить пользователю о параметрах, аргументах или общих целях. Чит идеально подходит для «команд, которые вы часто используете, но недостаточно часто, чтобы запомнить».

Листы - это небольшие переносимые текстовые файлы, которые можно копировать в несколько систем Linux / Unix; они вызываются и просматриваются как любая другая программа командной строки. Предоставляются базовые листы для распространенных программ, но вы также можете добавлять новые пользовательские листы.

Предпосылки

Чтобы следовать этому уроку, вам понадобится:

Шаг 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].

Related