I am trying to write a Drush script to enable a bunch of modules based on a hook. If it's already enabled, I would rather skip enabling that module.

Is there a way for Drush to return whether or not a module is enabled?


This code will list all non core enabled modules:

drush pm-list --pipe --type=module --status=enabled --no-core
  • 8
    +1; and you can even pipe the results to find command like this: drush pm-list --pipe --type=module --status=enabled --no-core | find /I "views_ui" - in this example, if "views_ui" is enabled, it returns views_ui, else it returns an empty result set (nothing). – Sk8erPeter Sep 1 '13 at 22:44
  • @Sk8erPeter grep seems more efficient for this case – MediaVince May 30 '18 at 13:40
drush pm-info

Gives status of module with additional information as given below:

drush pm-info <module_name>

 Extension        :  <ext>
 Project          :  Unknown
 Type             :  module
 Title            :  <title>
 Description      :  <desc>
 Version          :  6.x-1.0
 Date             :  1970-01-01
 Package          :  <pkg>
 Core             :  6.x
 PHP              :  5.3.5
 Status           :  enabled
 Path             :  <path_to_the_module>
 Schema version   :  <schema_version>
 Requires         :  none
 Required by      :  <list_of_modules_this_module_is_required_by>
 Configure        :  None
  • This command was removed in newer versions of Drush. Drush 10 says to instead use pm-list – mbomb007 Jun 18 '20 at 19:45

Not the answer you're looking for? Browse other questions tagged or ask your own question.