Pick our brains...

Drush, Drush, what an amazing Rush (Update Drupal from the Command Line)


When doing drush system-wide updates (ie: “drush pm-update”), drush will OVERWRITE.htaccess, index.php, and robots.txt.
*Make sure you have backups of these files*.

A good naming convention to use is:


Or similarly,


*Also Important:

When running drush, you should be logged into ssh with the username for the account.  Not root.  Not as another user via ssh keys.  But as the username for the account.  Otherwise owners and groups for updated files get FUBAR’ed.

Useful Drush Commands:

drush status (shows version info & status of drupal install in current directory)
drush pm-update (shows what updates are available, then prompts to continue updates)
drush pm-list (lists modules)
drush pm-disable (disables module(s))
drush pm-enable (enables module(s))

How to Install Drush on *nix Systems:

pear channel-discover pear.drush.org
pear install drush/drush

Example Drush Commands:

List all non-core modules:

drush pm-list --type=module --no-core --pipe


Disable all non-core modules:

drush pm-disable `drush pm-list --no-core --type=module --pipe`


Download & Enable a Module:

drush dl modulename (download the module)
drush en -y modulename (enable the module, the -y option means say yes to all the prompts)


Disable a Module:

drush dis modulename


Uninstall a Module:

drush pm-uninstall modulename


Export Nodes:

drush node-export-export --file="drupal_node_export_YYYYMMDD.bak"


Import Nodes:

drush node-export-import --file="drupal_node_export_YYYYMMDD.bak"


“Unstick” drupal cron job / run drupal cron job from drush:

drush vdel cron_semaphore
(then press "1")
drush cron