mirror of
https://github.com/bettercap/bettercap.git
synced 2025-03-12 04:36:03 -07:00
new: new -version command line argument to print version, build information and exit
This commit is contained in:
parent
bf4c841ef9
commit
027f4a3ccc
@ -11,6 +11,7 @@ type Options struct {
|
||||
Silent *bool
|
||||
NoColors *bool
|
||||
NoHistory *bool
|
||||
PrintVersion *bool
|
||||
EnvFile *string
|
||||
Commands *string
|
||||
CpuProfile *string
|
||||
@ -24,6 +25,7 @@ func ParseOptions() (Options, error) {
|
||||
AutoStart: flag.String("autostart", "events.stream, net.recon", "Comma separated list of modules to auto start."),
|
||||
Caplet: flag.String("caplet", "", "Read commands from this file and execute them in the interactive session."),
|
||||
Debug: flag.Bool("debug", false, "Print debug messages."),
|
||||
PrintVersion: flag.Bool("version", false, "Print the version and exit."),
|
||||
Silent: flag.Bool("silent", false, "Suppress all logs which are not errors."),
|
||||
NoColors: flag.Bool("no-colors", false, "Disable output color effects."),
|
||||
NoHistory: flag.Bool("no-history", false, "Disable interactive session history file."),
|
||||
|
12
main.go
12
main.go
@ -6,6 +6,8 @@ import (
|
||||
"os"
|
||||
"strings"
|
||||
|
||||
"runtime"
|
||||
|
||||
"github.com/bettercap/bettercap/core"
|
||||
"github.com/bettercap/bettercap/log"
|
||||
"github.com/bettercap/bettercap/modules"
|
||||
@ -31,9 +33,15 @@ func main() {
|
||||
}
|
||||
}
|
||||
|
||||
appName := fmt.Sprintf("%s v%s", core.Name, core.Version)
|
||||
if *sess.Options.PrintVersion {
|
||||
fmt.Printf("%s v%s (built for %s %s with %s)\n", core.Name, core.Version, runtime.GOOS, runtime.GOARCH, runtime.Version())
|
||||
return
|
||||
}
|
||||
|
||||
fmt.Printf("%s (type '%s' for a list of commands)\n\n", tui.Bold(appName), tui.Bold("help"))
|
||||
appName := fmt.Sprintf("%s v%s", core.Name, core.Version)
|
||||
appBuild := fmt.Sprintf("(built for %s %s with %s)", runtime.GOOS, runtime.GOARCH, runtime.Version())
|
||||
|
||||
fmt.Printf("%s %s [type '%s' for a list of commands]\n\n", tui.Bold(appName), tui.Dim(appBuild), tui.Bold("help"))
|
||||
|
||||
// Load all modules
|
||||
modules.LoadModules(sess)
|
||||
|
@ -173,6 +173,10 @@ func (s *Session) Module(name string) (err error, mod Module) {
|
||||
}
|
||||
|
||||
func (s *Session) Close() {
|
||||
if *s.Options.PrintVersion {
|
||||
return
|
||||
}
|
||||
|
||||
if *s.Options.Debug {
|
||||
fmt.Printf("\nStopping modules and cleaning session state ...\n")
|
||||
s.Events.Add("session.closing", nil)
|
||||
|
Loading…
x
Reference in New Issue
Block a user