diff --git a/shell/console/src/main/java/org/apache/felix/gogo/commands/Argument.java b/shell/console/src/main/java/org/apache/felix/gogo/commands/Argument.java
index f2f0e64..38a8293 100644
--- a/shell/console/src/main/java/org/apache/felix/gogo/commands/Argument.java
+++ b/shell/console/src/main/java/org/apache/felix/gogo/commands/Argument.java
@@ -42,4 +42,6 @@ public @interface Argument
     int index() default 0;
 
     boolean multiValued() default false;
+
+    boolean printDefaultsTo() default true;
 }
diff --git a/shell/console/src/main/java/org/apache/felix/gogo/commands/Option.java b/shell/console/src/main/java/org/apache/felix/gogo/commands/Option.java
index ca31e29..469575d 100644
--- a/shell/console/src/main/java/org/apache/felix/gogo/commands/Option.java
+++ b/shell/console/src/main/java/org/apache/felix/gogo/commands/Option.java
@@ -40,4 +40,5 @@ public @interface Option
 
     boolean multiValued() default false;
 
+    boolean printDefaultsTo() default true;
 }
diff --git a/shell/console/src/main/java/org/apache/felix/gogo/commands/basic/DefaultActionPreparator.java b/shell/console/src/main/java/org/apache/felix/gogo/commands/basic/DefaultActionPreparator.java
index e775900..202a595 100644
--- a/shell/console/src/main/java/org/apache/felix/gogo/commands/basic/DefaultActionPreparator.java
+++ b/shell/console/src/main/java/org/apache/felix/gogo/commands/basic/DefaultActionPreparator.java
@@ -71,6 +71,11 @@ public class DefaultActionPreparator implements ActionPreparator {
             return false;
         }
 
+        public boolean printDefaultsTo()
+        {
+            return true;
+        }
+
         public Class<? extends Annotation> annotationType()
         {
             return Option.class;
@@ -110,6 +115,9 @@ public class DefaultActionPreparator implements ActionPreparator {
                             public boolean multiValued() {
                                 return delegate.multiValued();
                             }
+                            public boolean printDefaultsTo() {
+                                return delegate.printDefaultsTo();
+                            }
                             public Class<? extends Annotation> annotationType() {
                                 return delegate.annotationType();
                             }
@@ -443,7 +451,7 @@ public class DefaultActionPreparator implements ActionPreparator {
                 out.print("        ");
                 out.println(Ansi.ansi().a(Ansi.Attribute.INTENSITY_BOLD).a(argument.name()).a(Ansi.Attribute.RESET));
                 printFormatted("                ", argument.description(), term != null ? term.getWidth() : 80, out);
-                if (!argument.required()) {
+                if (!argument.required() && argument.printDefaultsTo()) {
                     try {
                         argsMap.get(argument).setAccessible(true);
                         Object o = argsMap.get(argument).get(action);
@@ -474,18 +482,20 @@ public class DefaultActionPreparator implements ActionPreparator {
                 out.print("        ");
                 out.println(Ansi.ansi().a(Ansi.Attribute.INTENSITY_BOLD).a(opt).a(Ansi.Attribute.RESET));
                 printFormatted("                ", option.description(), term != null ? term.getWidth() : 80, out);
-                try {
-                    optionsMap.get(option).setAccessible(true);
-                    Object o = optionsMap.get(option).get(action);
-                    if (o != null
-                            && (!(o instanceof Boolean) || ((Boolean) o))
-                            && (!(o instanceof Number) || ((Number) o).doubleValue() != 0.0)) {
-                        out.print("                (defaults to ");
-                        out.print(o.toString());
-                        out.println(")");
+                if (option.printDefaultsTo()) {
+                    try {
+                        optionsMap.get(option).setAccessible(true);
+                        Object o = optionsMap.get(option).get(action);
+                        if (o != null
+                                && (!(o instanceof Boolean) || ((Boolean) o))
+                                && (!(o instanceof Number) || ((Number) o).doubleValue() != 0.0)) {
+                            out.print("                (defaults to ");
+                            out.print(o.toString());
+                            out.println(")");
+                        }
+                    } catch (Throwable t) {
+                        // Ignore
                     }
-                } catch (Throwable t) {
-                    // Ignore
                 }
             }
             out.println();
diff --git a/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/ListBundles.java b/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/ListBundles.java
index 0011303..4dd0b5a 100644
--- a/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/ListBundles.java
+++ b/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/ListBundles.java
@@ -39,7 +39,7 @@ public class ListBundles extends OsgiCommandSupport {
     @Option(name = "-u", description = "Shows the update locations", required = false, multiValued = false)
     boolean showUpdate;
     
-    @Option(name = "-t", description = "Specifies the bundle threshold; bundles with a start-level less than this value will not get printed out.", required = false, multiValued = false)
+    @Option(name = "-t", printDefaultsTo = false, description = "Specifies the bundle threshold; bundles with a start-level less than this value will not get printed out.", required = false, multiValued = false)
     int bundleLevelThreshold = -1;
 
     private List<BundleStateListener.Factory> bundleStateListenerFactories;
