An interactive command-line tool to manage your environments
You always need to login to some Linux machine or connect to a MySQL instance. Or you have some directories/environments that you often want to change to.
You can write a script, or create an alias to a sequence of commands, but you just don't want to remember those aliases!
I have many machines to connect to, and I always forget the name of them, so I have to check my script each time!
Let's do something! When you type goto
, it gives you a list of commands to run, and you can search by the name! You don't need to remember any machine names or aliases!
brew install LucienZhang/tap/goto-cli
You need to config your commands in file ~/.goto/.goto.yaml
StartInSearchMode: true # (Optional, default to true, whether start in search mode. press slash (/) to toggle between search mode and normal mode)
Commands:
- Name: command 1
Desc: A command that just prints hello # (Optional)
Color: 244;130;37 # (Optional, this is the RGB color code of your command name. It has to be in form of <r>;<g>;<b>)
Cmd: echo hello # The command to run
Shell: bash # (Optional, the shell to run your command, default to your user login shell)
ExecMode: false # (Optional, default to false, whether run command in exec mode. See details below)
- Name: ls goto config file
Cmd: ls ~/.goto/.goto.yaml
Then you have this!
-
Shell mode. The default mode, when
ExecMode
isfalse
. The command is run in a shell, which by default is your user login shell, or the shell you specified inShell
field. -
Exec mode. When
ExecMode
istrue
. The command will be run dirrectly.