Drush 9 only supports one install method. It requires that your Drupal 8 site be built with Composer and Drush be listed as a dependency.
See the Drush 8 docs for installing prior versions of Drush.
Install a site-local Drush and Drush Launcher.
- It is recommended that Drupal 8 sites be built using Composer, with Drush listed as a dependency. That project already includes Drush in its composer.json. If your Composer project doesn't yet depend on Drush, run
composer require drush/drushto add it.
- Optional. To be able to call
drushfrom anywhere, install the Drush Launcher. That is a small program which listens on your $PATH and hands control to a site-local Drush that is in the /vendor directory of your Composer project. If you skip this step, run Drush from Drupal root via
../vendor/bin/drush. In that case Drush's bash integration and custom prompt won't work.
- Optional. Run
drush init. This edits ~/.bashrc so that Drush's custom prompt and bash integration are active.
See Usage for details on using Drush.
- Tip: To use a non-default PHP, edit ~/.bashrc so that the desired PHP is in front of your $PATH. If that is not desirable, you can change your PATH for just one request:
PATH=/path/to/php:$PATHdrush status ...`
- Tip: To use a custom php.ini for Drush requests, see this comment.
Drush 9 cannot run commandfiles from Drush 8 and below (e.g. example.drush.inc). See our guide on porting commandfiles. Also note that alias and config files use a new .yml format in Drush 9.
|Drush Version||Drush Branch||PHP||Supported Drupal versions||Code Style||Isolation Tests||Functional Tests|
|Drush 8||8.x||5.4.5+||D6, D7, D8.3-||-|
|Drush 7||7.x||5.3.0+||D6, D7||Unsupported|
|Drush 6||6.x||5.3.0+||D6, D7||Unsupported|
|Drush 5||5.x||5.2.0+||D6, D7||Unsupported|