From 55fa1a24b97abb9c13dbe6689e681c4b6dab6d50 Mon Sep 17 00:00:00 2001 From: Matt Jaffee Date: Tue, 14 Feb 2017 13:38:58 -0600 Subject: [PATCH] modify pilosactl import to allow it to read from stdin pass a "-" argument for stdin --- pilosactl/import.go | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/pilosactl/import.go b/pilosactl/import.go index 6a278fe9a..9d4ad63f4 100644 --- a/pilosactl/import.go +++ b/pilosactl/import.go @@ -128,15 +128,22 @@ func (cmd *ImportCommand) Run(ctx context.Context) error { func (cmd *ImportCommand) importPath(ctx context.Context, path string) error { a := make([]pilosa.Bit, 0, cmd.BufferSize) - // Open file for reading. - f, err := os.Open(path) - if err != nil { - return err - } - defer f.Close() + var r *csv.Reader + + if path != "-" { + // Open file for reading. + f, err := os.Open(path) + if err != nil { + return err + } + defer f.Close() + + // Read rows as bits. + r = csv.NewReader(f) + } else { + r = csv.NewReader(cmd.Stdin) + } - // Read rows as bits. - r := csv.NewReader(f) r.FieldsPerRecord = -1 rnum := 0 for {