自定义Drush命令文件的可选路径

深度使用Drush后免不了要自定义Drush命令,和Drush脚本相比,Drush命令更加规范,还可以文档化。我们大多都知道一两种声明Drush命令的声明路径,这里为大家列举一下所知道的所有声明路径。

  1. Drush安装路径的commands文件夹。
  2. 运行drush命令时的include选项指定的目录或文件,注意,这种方式也同时支持drush.ini里定义的include选项。
  3. 系统级Drush命令目录,例如:/usr/share/drush/commands。
  4. 当前用户HOME目录下的.drush目录。
  5. 当前Drupal安装目录下的sites/all/drush目录。
  6. 当前Drupal安装目录下,所有开启模块的模块目录或子目录下。
  7. 可以根据drush版本进行区别加载,例如,如果当前是drush5,则devel.drush5.inc会被识别,devel.drush4.inc就不会被识别。

知道更多声明路径的意义在于,有时候常用的声明方法不适合,因为有些命令就是临时用一下,没有必要提交到版本库,而又有一些Drush命令太常用了,直接作为系统级命令,给所有系统使用,所以根据目的的不同,每种方式都有其适用场景。

一般Drush文件名的规则是:xxx.drush.inc。