diff --git a/command/kv_put.go b/command/kv_put.go index 28c5d98fa..4c214a665 100644 --- a/command/kv_put.go +++ b/command/kv_put.go @@ -229,8 +229,12 @@ func (c *KVPutCommand) dataFromArgs(args []string) (string, string, error) { return key, string(data), nil case '-': var b bytes.Buffer - if _, err := io.Copy(&b, stdin); err != nil { - return "", "", fmt.Errorf("Failed to read stdin: %s", err) + if len(data) > 1 { + return key, data, nil + } else { + if _, err := io.Copy(&b, stdin); err != nil { + return "", "", fmt.Errorf("Failed to read stdin: %s", err) + } } return key, b.String(), nil default: