Просмотр подсказок/шпаргалок (cheat sheets) по командам UNIX/Linux в командной строке
без использования специального программного обеспечения.Например, для того чтобы посмотреть наиболее важные ключи команды curl
и наиболее интересные командные строки, построенные на её основе:$ curl cheat.sh/curl
Вся (или большинство) этой информации есть и в curl(1) (man curl),
но шпаргалка удобна тем, что содержит наиболее важные, наиболее популярные
или наиболее интересные аспекты использования команды.Существует несколько известных программ-шпаргалок для командной строки.
Самые известные из них это cheat и tldr.Сервис cheat.sh отличается от них тем, что он не требует инсталляции дополнительных программ,
и не требует вообще никаких предварительных действий:
не нужно ничего инсталлировать, ни искать ничего в поисковых системах, ни даже открывать браузер.
Поиск осуществляется прямо там, где потом используется информация — в командной строке. Код сервиса [[https://github.com/chubin/cheat.sh открыт]] под лицензией MIT.Сервис предоставляет доступ к нескольким популярным репозиториям
краткой справочной информации:*** cheat.sheets (собственный репозиторий cheat.sh);
*** tldr;
*** cheat.Все эти репозитории очень популярны и постоянно развиваются, и множество команд,
покрываемых ими, непрерывно растёт и пополняется (сейчас cheat.sh предоставляет
доступ к 701 шпаргалке).Если название команды, по которой требуется информация, точно неизвестно,
или если таких команд множество, то можно воспользоваться поиском.
Поиск включается тильдой, за которой идёт поисковый запрос:curl cheat.sh/~snapshot
В данном случае будут найдены и показаны все примеры работы со снапшотами в UNIX/Linux:
LVM, ZFS, btrfs и так далее.Поиск можно осуществлять и в пределах одной страниц. Удобно, если информации
на странице много, а вас интересует какая-то определённая:curl cheat.sh/azure~list
Поиск может сопровождаться дополнительными опциями:
*** r рекурсия
*** b часть слова
*** i без учёта регистракоторые указываются после закрывающего слэша:
curl cheat.sh/curl~post/i
Для поддержки tab-completion в bash:
mkdir ~/.bash.d/
curl cheat.sh/:bash.completion > ~/.bash.d/cheat.sh
. ~/.bash.d/cheat.sh
# и добавить эту же строку в ~/.bashrcВ репозитории есть не только подсказки по командам UNIX/Linux и их опциям,
но и по различным языкам программирования.curl cheat.sh/rust/hello
curl cheat.sh/rust/~functionДобавление новых подсказок и редактирование существующих
можно осуществлять одним из трёх способов:** если страница с подсказкой взята из внешнего репозитория, её нужно редактировать там.
в HTML-версии странцы в браузере источник страницы указан с помощью кнопки на github'е;** если страница взята из собственного репозитория cheat.sh, её нужно редактировать в
репозитории cheat.sheets; для этого на странице нужно нажать на кнопку edit;** новые страницы можно добавить прямо из командной строки с помощью curl (подробности в "curl cheat.sh/:post").
URL: https://github.com/chubin/cheat.sh
Обсуждается: http://www.opennet.me/tips/info/3018.shtml
Шпаргалка на шпаргалку ...
Весьма! Спасибо, Игорь!
> Весьма! Спасибо, Игорь!Да! Это вам не https://developers.redhat.com/blog/2017/05/23/technical-chea.../ .
По-моему от redhat тоже очень неплохо, но только немножко с другим интерфейсом
bash completion не работает.
> bash completion не работает.Работает
Пруф:
http://igor.chub.in/download/cheatsh-ru.gif
Надо ввести curl cheat.sh/<=== и вот в этом месте нажимать tab
Тогда поправьте в тексте
curl cheat.sh/:bash.completion > ~/.bash.d/cheat.sh
на
curl cheat.sh/:bash_completion > ~/.bash.d/cheat.sh
Оба варианта должны работать
Спасибо.
Нету по tcsh, мало по awk, низачёд.
Так это же только начало. Будет и awk и tcsh, разумеется
$ curl cheat.sh/ss
ss
Utility to investigate sockets
...
-l list listing sockets
...listing?
Fixed, спасибо
кстати, спасибо. Я как любитель MUD-ов, очень ценю такие штуки.
curl cheat.sh/Brainfuckне работает !
Кроме идеи должна быть еще качественная реализация (IMHO)> $ curl cheat.sh/curl
> # Download multiple files
> curl -O URLOfFirstFile -O URLOfSecondFileголову сломаешь, пока прочитаешь такое «краткое» пояснение
вот же ниже нормально написано> # Fetch only the HTTP headers from a response
> curl -I http://example.comчитается влёт и сразу понятно
идея не новая, но хорошая (особенно поддержка собственного репозитория, хорошие примеры из которого возможо могут быть опубликованы в общем).
Удачи проекту.
Спасибо!
Согласен с вашим замечанием, что шпаргалка на то и шпаргалка,
чтобы читалась влёт, но тут отчасти проблема в том,
что данные берутся (могут браться) из внешних репозиториев,
и там уже кто на что горазд.Заведомо ложные вещи можно поправить,
а с такими небольшими стилистическими отклонениями
не хочется связываться (хотя если их много наберётся, то надо будет их править в любом случае)
Проекту стоит быть более предсказуемым. Нижеследующий ответ windows curl-у - моветон:←[38;5;246m# Download a single file←[39m
←[38;5;252mcurl←[39m←[38;5;252m ←[39m←[38;5;252mhttp://path.to.the/file←[39m
...
Да, вы правы, наверное,
но на всякий случай:https://gist.github.com/chubin/22a239783c67456eb0de
Про ?T вы, наверняка, знаете. Может быть, стоит этот режим вообще по умолчанию использовать
У этого метода есть два фатальных недостатока по сравнения с man/info1. Необходимо наличие соединения с интернет. А иногда его не бывает, например при первоначальной настройке сервера.
2. Надо помнить название сайта :)
а так неплохо
При настройке сайта это маловероятно, что инета не будет, а вот где-то в дороге, да, может оказаться вполне. Но это мы пофиксим скоро.А вот название, да. Придётся выучить :)
Тише-тише. Сервис скоро купит гугл, а там и телеметрия по-гугловски. Сразу будет ясно где сидят умные дяди, а где не очень.
И зачем он гуглу, позволь спросить?
Надо NSA, значит надо и гуглу
класс!
есть ли поддержка Oh my zsh?
Спасибо! Пока поддержки zsh нет, но скоро будет. Пока только bash и fish
Респектище!
Было бы неплохо сделать скачиваемую версию, чтобы не зависеть от интернета.
Нет чтобы в man добавить examples - нет, надо запилить ещё один б?длоскрипт, лезущий в б?длоинтернет...
Красиво у вас там в Allersberg :) Но медленно грузит с Santa Clara, CA. Может пару серверов (хоть два) и geo-DNS ?
Сервера вообще-то совсем не в Аллерсберге стоят, а что, такая сильная задержка, что аж заметно? Значит, есть какая-то другая проблема ещё.
Что показываетtime curl cheat.sh/ls > /dev/null
?
Да, в офисе что-то с ДНС и загружена сеть. Из дому ок. Гео-ДНС пока не нужно Ж)time curl -s -w '%{time_connect} %{time_namelookup} ' cheat.sh/ls -O /dev/null
0.355 0.005 0.000 0.000
real 0m0.547s
user 0m0.005s
sys 0m0.004s
Я понял про город - просто глянул как там спокойно у вас. Люблю маленькие городки.