Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

meteoritt/topalias

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

132 Commits

Repository files navigation

topalias

README.md

First read wthis: https://github.com/ruopsdev/tibo-telegram-bot

Topalias

Test Coverage GitLab pipeline Python Version Downloads Code style: black Imports: isort DeepSource

topalias - Linux alias generator from bash/zsh command history with statistics, written on Python.

Features

  • Generate short alias for popular command from bash/zsh shell history
  • Command history statistics & analytics
  • Parametrised input
  • Console help for all commands, options and arguments
  • Shell workflow hints
  • Add support #PowerShell

Installation

From pypi.org repository:

pip3 install -U --user topalias

From source:

git clone https://github.com/CSRedRat/topalias
python3 topalias/setup.py install --user

Run as python script without install:

git clone https://github.com/CSRedRat/topalias
python3 topalias/topalias/cli.py -h

Install requirements

sudo apt install python3 python3-pip -y

Add PATH environment variable for run Python tools as Linux utility:

echo "export PATH=$PATH:$HOME/.local/bin" >> ~/.bashrc
source ~/.bashrc

Usage

generated bash aliases

Without parameters utility check if you use alias in ~/.bash_aliases - analyze and print usage statistics, then find new simple aliases

python3 -m topalias # run as python module
topalias # check aliases and print suggestion bash command history
topalias -h # print help
topalias --zsh # work with zsh shell command history
topalias --min=2 # set minimal length for generated acronym filter, so that exclude some short command and find long, hard, usable command
topalias --debug history # only analyze local bash history and print filtered rows

Files path search order:

  • directory from execution parameter
  • .bash_history in . current directory
  • .bash_history in ~ user home directory
  • example development files in topalias/data

You can change dot files search path to another user home directory:

topalias -f /home/user # or topalias --path /home/user

Also you can use topalias utility in Bash for Git on Windows and in WSL.

Documentation

Usage: topalias [OPTIONS] COMMAND [ARGS]
Options:
 -l, --min INTEGER Print alias acronym not less that value. Default: 1
 -c, --count INTEGER Print specified number acronym suggestions. Default:
 20
 --filter Filter used aliases in history. Default: False
 -z, --zsh Use zsh shell history file .zsh_history. Default:
 False
 -f, --path TEXT Change custom directory for files: .bash_aliases,
 .bash_history, .zsh_history
 --version Print current program version and check latest on
 pypi.org.
 --debug / --no-debug Enable debug strings in output.
 -h, --help Show this message and exit.
Commands:
 hint Print all hints.
 history Print bash history file.
 version Get program current and available version.

TODO

  • check if alias name already used
  • check if alias already added
  • add any another acronym algorithm with semantic
  • more statistics & analytics (used dir, utils, parameters, time)
  • alias max length parameter
  • command ignore list flag: top, emacs, vim
  • often used command "ssh username@servername" suggest add to .ssh/config/

License

GPLv3

Contributors ✨

Thanks goes to these wonderful people (emoji key):

GitLab repository mirror with CI/CD: https://gitlab.com/CSRedRat/topalias

Releases

No releases published

Sponsor this project

Packages

No packages published

Contributors 3

AltStyle によって変換されたページ (->オリジナル) /