A helper for remembering useful shell commands.
Project description
xxcmd
xx
is a Linux shell command. xx
remembers other shell commands, so you don't have to.
Installation
Requires Python 3. Easy install through pip
.
On Ubuntu:
sudo pip3 install xxcmd
On Arch:
sudo pip install xxcmd
Basic Usage Examples
Using xx
is pretty simple. You build up a database of useful commands, and search and execute them whenever you like.
Adding Commands
Commands are added to the database with:
xx -a [label] <command>
Add a very simple command top
. Not very useful as the command is already short and easy to remember.
xx -a top
Add the du
command to display size of all files and directories in the current directory.
xx -a du --max-depth=1 -h .
Add the same command but with a friendly (searchable) label:
xx -a [File Size] du --max-depth=1 -h .
Adding our favourite ssh command:
xx -a [SSH Best Host] ssh -i ~/.ssh/mykey.pem me@myhost.com
Browse and Search Commands Interactively
Run xx
with no options to enter the interactive UI.
xx
Fast search and execute
xx
can search for matching commands and if only one match is found it will be immediately executed. To run the command we just added we could search for "du":
xx du
Or to run it by searching for a partial match of the label we added:
xx size
We could immediately ssh connect with:
xx best
Interactive UI
Invoking xx
without options will open the interactive UI. Presenting a list of all commands with an interactive search.
Keys:
- UP/DOWN arrow keys - navigate the list of commands.
- DELETE - remove the currently selected command
- RETURN - execute the currently selected command
- ESCAPE - exit
- Any other key press is added to the interactive search to filter the command list.
Further Usage
usage: xx [-h] [-a ...] [-i URL] [-l] [-t] [-v] [cmd]
positional arguments:
cmd Search for a matching command
and run it immediately.
optional arguments:
-h, --help show this help message and exit
-a ..., --add ... Add the given command to the
database. Command may begin
with a label enclosed in square
brackets [label] <cmd>
-i URL, --import-url URL
Import a command database from
the given URL. Merge into existing
database.
-l, --list Print all commands in the database
-t, --no-labels Don't display command labels.
-v, --version Display program version.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file xxcmd-0.2.2.tar.gz
.
File metadata
- Download URL: xxcmd-0.2.2.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.25.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81196201d4b6e2e722ffd31acac545655594b221f9f3f07ab401100969825046 |
|
MD5 | 32e5e63d54b08545fa96c685f91fbf1d |
|
BLAKE2b-256 | c7dd7c17a648a86e69b32f953f29a12227d2e27049673a0e95e47832826405ca |
File details
Details for the file xxcmd-0.2.2-py3-none-any.whl
.
File metadata
- Download URL: xxcmd-0.2.2-py3-none-any.whl
- Upload date:
- Size: 7.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.25.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7cffd63883fe7a9549c8f518a0b5d2d4e4cc91f56db1c0f9bc870cb863b669b0 |
|
MD5 | 13e9b35fefa14aec165102adb10a402e |
|
BLAKE2b-256 | 79903038ddc4240cd9e2eebdfab000efae76036e6940f3eb6145d6a1bf8e9e00 |