cheat allows you to create and view interactive cheatsheets on the
command-line. It was designed to help remind *nix system administrators of
options for commands that they use frequently, but not frequently enough to
The next time you're forced to disarm a nuclear weapon without consulting Google, you may run:
You will be presented with a cheatsheet resembling:
# To extract an uncompressed archive: tar -xvf '/path/to/foo.tar' # To extract a .gz archive: tar -xzvf '/path/to/foo.tgz' # To create a .gz archive: tar -czvf '/path/to/foo.tgz' '/path/to/foo/' # To extract a .bz2 archive: tar -xjvf '/path/to/foo.tgz' # To create a .bz2 archive: tar -cjvf '/path/to/foo.tgz' '/path/to/foo/'
To see what cheatsheets are available, run
Note that, while
cheat was designed primarily for *nix system administrators,
it is agnostic as to what content it stores. If you would like to use
to store notes on your favorite cookie recipes, feel free.
It is recommended to install
[sudo] pip install cheat
The value of
cheat is that it allows you to create your own cheatsheets - the
defaults are meant to serve only as a starting point, and can and should be
Cheatsheets are stored in the
~/.cheat/ directory, and are named on a
per-keyphrase basis. In other words, the content for the
tar cheatsheet lives
Provided that you have a
variable set, you may edit cheatsheets with:
cheat -e foo
foo cheatsheet already exists, it will be opened for editing.
Otherwise, it will be created automatically.
After you've customized your cheatsheets, I urge you to track
with your dotfiles.
Setting a DEFAULT_CHEAT_DIR
Personal cheatsheets are saved in the
~/.cheat directory by default, but you
can specify a different default by exporting a
Setting a CHEATPATH
You can additionally instruct
cheat to look for cheatsheets in other
directories by exporting a
CHEATPATH environment variable:
You may, of course, append multiple directories to your
You may view which directories are on your
Enabling Syntax Highlighting
cheat can optionally apply syntax highlighting to your cheatsheets. To enable
syntax highlighting, export a
CHEATCOLORS environment variable:
Specifying a Syntax Highlighter
You may manually specify which syntax highlighter to use for each cheatsheet by wrapping the sheet's contents in a Github-Flavored Markdown code-fence.
```sql -- to select a user by ID SELECT * FROM Users WHERE id = 100 ```
If no syntax highlighter is specified, the
bash highlighter will be used by