diff --git a/uuid.admin.inc b/uuid.admin.inc
index 78689cc..da608ab 100644
--- a/uuid.admin.inc
+++ b/uuid.admin.inc
@@ -96,7 +96,7 @@ function uuid_admin() {
 /**
  * Ensure all content and users have UUIDs, if they are supposed to.
  */
-function uuid_sync() {
+function uuid_sync($types = NULL) {
   // Users.
   if (variable_get('uuid_automatic_for_users', FALSE)) {
     $result = db_query("SELECT uid FROM {users} WHERE uid NOT IN (SELECT uid FROM {uuid_users})");
@@ -113,7 +113,9 @@ function uuid_sync() {
     }
   }
 
-  $types = variable_get('uuid_automatic_for_nodes', array());
+  if (!$types) {
+    $types = variable_get('uuid_automatic_for_nodes', array());
+  }
 
   // Remove disabled node types.
   $types = array_filter($types);
diff --git a/uuid.drush.inc b/uuid.drush.inc
new file mode 100644
index 0000000..87ba2fe
--- /dev/null
+++ b/uuid.drush.inc
@@ -0,0 +1,66 @@
+<?php
+
+/**
+ * @file
+ * Drush implementation for the uuid module.
+ */
+
+/**
+ * Implementation of hook_drush_command().
+ */
+function uuid_drush_command() {
+  $items = array();
+  $items['uuid-create-missing'] = array(
+    'description' => 'Create missing UUIDs for node types specified for automatic generation',
+    'arguments' => array(
+      'type' => 'Constrain creation of UUIDs to nodes of a certain type.'),
+    'aliases' => array('uuid-create'),
+  );
+  return $items;
+}
+
+/**
+ * Implementation of hook_drush_help().
+ *
+ */
+function uuid_drush_help($section) {
+  switch ($section) {
+    case 'drush:uuid-create-missing':
+      return dt("This command will create missing UUIDs for those content types specified in the module settings for automatic generation.");
+  }
+}
+
+/**
+ * drush command callback
+ *
+ */
+function drush_uuid_create_missing() {
+  if (!drush_confirm(dt('Are you sure?'))) {
+    return drush_user_abort();
+  }
+  module_load_include('inc', 'uuid', 'uuid.admin');
+
+  if ($args = func_get_args()) {
+    $validate_result = _uuid_validate_specified_types($args);
+    if (!$validate_result[0]) {
+      drush_log(dt($validate_result[1]), 'error');
+      return;
+    }
+  }
+  drush_log(dt('Beginning bulk creation of UUIDs.'), 'ok');
+  uuid_sync($args);
+}
+
+function _uuid_validate_specified_types($args) {
+  $types = variable_get('uuid_automatic_for_nodes', array());
+  // Remove disabled node types.
+  $types = array_filter($types);
+
+  foreach($args as $arg) {
+    if (!in_array($arg, $types)) {
+      return array(FALSE, 'One or more of the content types you specified are not selected for automatic UUID generation.');
+    }
+  }
+  return array(TRUE);
+}
+
