diff --git a/configtools.go b/configtools.go
index b54cccc232a4a88503b34648383666f05d2513a2..b970fe03ceb672ce097326c8d2d04d9d9b2a4f49 100644
--- a/configtools.go
+++ b/configtools.go
@@ -5,6 +5,7 @@ import (
 	"log"
 	"os"
 	"path"
+	"reflect"
 	"strings"
 
 	"github.com/spf13/cobra"
@@ -123,7 +124,14 @@ func bindFlags(cmd *cobra.Command) {
 		configName := f.Name
 		if !f.Changed && viper.IsSet(configName) {
 			val := viper.Get(configName)
-			cmd.Flags().Set(f.Name, fmt.Sprintf("%v", val))
+			if reflect.TypeOf(val).String() == "string" {
+				cmd.Flags().Set(f.Name, fmt.Sprintf("%v", val))
+			} else { //Assume array of string
+				valArray := val.([]interface{})
+				for _, v := range valArray {
+					cmd.Flags().Set(f.Name, fmt.Sprintf("%v", v))
+				}
+			}
 		}
 	})
 }