跳转到主要内容
天涯 提交于 31 October 2014

Drush的安装

这里只介绍linux系统的安装方法,Drush有两种安装方式,最简单的方式是使用PEAR库。

首先确定系统中安装了PHP的PEAR库,然后在命令行执行:

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

会自动下载Drush并安装完成,在命令行输入which drush,可以检查drush是否安装成功。

如果需要手动安装,按照以下步骤:

1.先到:http://drupal.org/project/drush#downloads 下载Drush,解压到除了Drupal网站目录的其它路径下。

2.设置drush脚本的权限为可执行:

chmod u+x /path/to/drush/drush

3.设置系统通过drush命令调用,编辑用户home目录下的.bashrc文件,在里面加入:

export PATH="$PATH:/path/to/drush:/usr/local/bin"

然后重新登录当前用户就可以正常使用drush了。

 

Drush的使用

Drush通过命令行命令的方式执行,可以用drush help显示所有的命令。

要对某个drupal站点进行操作,一个方式是用cd命令进入到Drupal站点的根目录或者子目录,然后执行drush命令,默认的操作对象就是当前所在Drupal站点。

另一个方式使用drush aliases,也就是drupal站点的别名,首先需要在drush的配置文件中定义要管理的drush站点别名:

1.把Drush目下的examples目录下的example.aliases.drushrc.php文件拷贝到Drush根目录,或者~/.drush目录中,这里的example为Drupal网站项目名称,可以更改为自定义的别名。

2.编辑*.aliases.drushrc.php文件,里面有详细的帮助说明,这里只介绍基本的语法。

  $aliases['dev'] = array(     'root' => '/path/to/drupal',     'uri' => 'dev.mydrupalsite.com',   );

每定义一个$aliases数组值代表了一个Drupal站点,一个站点即Drupal目录中sites目录定义的一个子站,由于Drupal支持多站点,所以每个Drupal安装可以定义多个域名,每个域名可以共享数据库和设置,又可以拥有独立的数据和文件系统。

$aliases数组的键”dev”是站点的自定义名称,root是站点的根目录,uri是多站的域名,通常只有一个站点的情况下就是default。

$aliases定义的站点还可以使用远程站点,只需要拥有ssh权限即可以在本地对远程站点进行所有操作,还可以在远程和本地站点间进行同步操作,这点也非常的方便,具体配置请参见注释。

定义好Drupal站点后,在任何位置调用drush命令都可以直接指定操作的站点对象,格式为:drush @alias 命令。alias就是配置文件中定义的站点别名。比如要清除上面定义的站点dev的全部缓存,在命令行中执行:

drush @example.dev cache-clear

如果没有命名冲突也可以省略网站项目名,直接使用@dev。

详细的命令列表请参见drush help,还可以用“drush help 命令”的格式查看命令具体参数。

Drush多站点同步

对于开发者来说,Drush还有一个特别的应用,可以在多个Drupal站点间同步文件和数据库。比如我们在本地安装两份Drupal,然后在drush的aliases.drushrc.php配置文件中分别定义两个站点@dev和@live,然后就可以使用drush命令在两个站点间同步文件和数据库:

drush @dev @live rysnc drush @dev @live sql-sysnc

第一个命令表示把@dev站点的所有的文件同步到@live站点,第二个命令表示把@dev站点的所有数据库同步到@live站点。@dev和@live的顺序表示同步的顺序,所有目标站点的原有数据会被清除,如果只希望有选择性的同步,要在站点的$aliases定义数组里添加相应的参数,具体请参见example.aliases.drushrc.php文件里的注释。

几个核心Drush特性:

  • Drush包管理器(Drush Package Manager)可以让您使用像(apt-get类)的命令行方式来下载、启用、禁用、卸载、更新模块/主题/配置档(Profile)/翻译档。例如:输入 drush dl views 和 drush pm-enable views 就可以下载并安装views模块。另外,只需要运行 drush pm-update 命令,Drush包管理器就可以让你更新所有的模块以及Drupal核心。
  • Drush 核心:有几个有用的工具用于站点管理员和开发者,例如:drush cron(运行cron)、drush cache-clear(清空缓存)。同时还包含一个为drush定制内建命令的外壳。
  • Druapl SQL 命令让您查询数据库中的任何问题,甚至可以帮您在不同环境间迁移数据库。
标签
Drupal 版本