@@ -128,8 +128,6 @@ func (m *Main) Run(args ...string) error {
128128 return newDumpCommand (m ).Run (args [1 :]... )
129129 case "page-item" :
130130 return newPageItemCommand (m ).Run (args [1 :]... )
131- case "get" :
132- return newGetCommand (m ).Run (args [1 :]... )
133131 case "info" :
134132 return newInfoCommand (m ).Run (args [1 :]... )
135133 case "keys" :
@@ -840,96 +838,6 @@ Print a list of keys in the given bucket.
840838` , "\n " )
841839}
842840
843- // getCommand represents the "get" command execution.
844- type getCommand struct {
845- baseCommand
846- }
847-
848- // newGetCommand returns a getCommand.
849- func newGetCommand (m * Main ) * getCommand {
850- c := & getCommand {}
851- c .baseCommand = m .baseCommand
852- return c
853- }
854-
855- // Run executes the command.
856- func (cmd * getCommand ) Run (args ... string ) error {
857- // Parse flags.
858- fs := flag .NewFlagSet ("" , flag .ContinueOnError )
859- var parseFormat string
860- var format string
861- fs .StringVar (& parseFormat , "parse-format" , "ascii-encoded" , "Input format. One of: ascii-encoded|hex (default: ascii-encoded)" )
862- fs .StringVar (& format , "format" , "auto" , "Output format. One of: " + FORMAT_MODES + " (default: auto)" )
863- help := fs .Bool ("h" , false , "" )
864- if err := fs .Parse (args ); err != nil {
865- return err
866- } else if * help {
867- fmt .Fprintln (cmd .Stderr , cmd .Usage ())
868- return ErrUsage
869- }
870-
871- // Require database path, bucket and key.
872- relevantArgs := fs .Args ()
873- if len (relevantArgs ) < 3 {
874- return ErrNotEnoughArgs
875- }
876- path , buckets := relevantArgs [0 ], relevantArgs [1 :len (relevantArgs )- 1 ]
877- key , err := parseBytes (relevantArgs [len (relevantArgs )- 1 ], parseFormat )
878- if err != nil {
879- return err
880- }
881- if path == "" {
882- return ErrPathRequired
883- } else if _ , err := os .Stat (path ); os .IsNotExist (err ) {
884- return ErrFileNotFound
885- } else if len (buckets ) == 0 {
886- return ErrBucketRequired
887- } else if len (key ) == 0 {
888- return berrors .ErrKeyRequired
889- }
890-
891- // Open database.
892- db , err := bolt .Open (path , 0600 , & bolt.Options {ReadOnly : true })
893- if err != nil {
894- return err
895- }
896- defer db .Close ()
897-
898- // Print value.
899- return db .View (func (tx * bolt.Tx ) error {
900- // Find bucket.
901- lastBucket , err := findLastBucket (tx , buckets )
902- if err != nil {
903- return err
904- }
905-
906- // Find value for given key.
907- val := lastBucket .Get (key )
908- if val == nil {
909- return fmt .Errorf ("Error %w for key: %q hex: \" %x\" " , ErrKeyNotFound , key , string (key ))
910- }
911-
912- // TODO: In this particular case, it would be better to not terminate with '\n'
913- return writelnBytes (cmd .Stdout , val , format )
914- })
915- }
916-
917- // Usage returns the help message.
918- func (cmd * getCommand ) Usage () string {
919- return strings .TrimLeft (`
920- usage: bolt get PATH [BUCKET..] KEY
921-
922- Print the value of the given key in the given (sub)bucket.
923-
924- Additional options include:
925-
926- --format
927- Output format. One of: ` + FORMAT_MODES + ` (default=auto)
928- --parse-format
929- Input format (of key). One of: ascii-encoded|hex (default=ascii-encoded)"
930- ` , "\n " )
931- }
932-
933841var benchBucketName = []byte ("bench" )
934842
935843// benchCommand represents the "bench" command execution.
0 commit comments