* showing help by basic call
All checks were successful
Build and Test / build-test (1.23.4) (push) Successful in 1m37s
All checks were successful
Build and Test / build-test (1.23.4) (push) Successful in 1m37s
* autocompletion for exec
This commit is contained in:
@@ -3,6 +3,7 @@ package exec
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"git.denysoft.de/CubeBit/ssh-hub/util"
|
||||
"github.com/creack/pty"
|
||||
"github.com/spf13/cobra"
|
||||
"github.com/spf13/viper"
|
||||
@@ -16,6 +17,10 @@ import (
|
||||
var execCmd = &cobra.Command{
|
||||
Use: "exec",
|
||||
Short: "Execute command of specific alias",
|
||||
ValidArgsFunction: func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) {
|
||||
data := viper.GetStringMapString("data")
|
||||
return util.AutocompleteConfig(&data, toComplete), cobra.ShellCompDirectiveNoFileComp
|
||||
},
|
||||
Args: func(cmd *cobra.Command, args []string) error {
|
||||
if err := cobra.ExactArgs(1)(cmd, args); err != nil {
|
||||
return err
|
||||
|
||||
@@ -11,7 +11,7 @@ import (
|
||||
|
||||
var replaceCmd = &cobra.Command{
|
||||
Use: "replace",
|
||||
Short: "Replace in string to new string in all commands",
|
||||
Short: "Replace string with new string in all commands",
|
||||
Args: func(cmd *cobra.Command, args []string) error {
|
||||
if err := cobra.ExactArgs(2)(cmd, args); err != nil {
|
||||
return err
|
||||
|
||||
13
cmd/root.go
13
cmd/root.go
@@ -14,15 +14,15 @@ import (
|
||||
"os"
|
||||
)
|
||||
|
||||
var validArgs = []string{"list", "replace", "add", "delete", "exec"}
|
||||
|
||||
var rootCmd = &cobra.Command{
|
||||
Use: "ssh-hub",
|
||||
Short: "ssh-hub is a simple SSH manager. Storing all your ssh commands and managing them",
|
||||
Long: "ssh-hub was created in order to automatically manage ssh commands and different Groups.\n " +
|
||||
"\tCreate groups based on projects, environments etc and add there your ssh commands.\n " +
|
||||
"\tWe will carefully manage all known sessions and groups.",
|
||||
Run: func(cmd *cobra.Command, args []string) {
|
||||
fmt.Println("Welcome to ssh-hub!")
|
||||
},
|
||||
ValidArgs: validArgs,
|
||||
}
|
||||
|
||||
func Execute() {
|
||||
@@ -72,13 +72,8 @@ ssh-hub
|
||||
├── ssh - Execute an SSH command (with autocomplete)
|
||||
├── add - Add a new command or group
|
||||
│ ├── command - Save an SSH command
|
||||
│ └── group - Create a group of commands
|
||||
├── exec - Execute a saved command or group
|
||||
├── remove - Remove a command or group
|
||||
├── groups - Manage groups
|
||||
│ ├── add - Add a command to a group
|
||||
│ ├── remove - Remove a command from a group
|
||||
│ └── list - List commands in a group
|
||||
├── delete - Remove a command or group
|
||||
├── autocomplete - Enable or generate shell autocompletion
|
||||
└── help - Display help information for commands
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user