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/drush3.设置系统通过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 命令让您查询数据库中的任何问题,甚至可以帮您在不同环境间迁移数据库。
学习了
很棒的教程。
nice post!