我想使用drush rsync
命令将文件从远程服务器传输到本地Drush,使用两台服务器上的Drush dump-directory。在我看来,它看起来像这样:
$ drush rsync @remote$dump-dir/drup.sql.gz $dump-dir/drup.sql.gz
由于我主机的限制,我无法直接使用dump remote mysql。相反,我将在远程服务器上本地转储,然后使用drush rsync
将转储传输到安全(非Web可访问)目录。
我可以使用常规rsync,但我正在尝试为各种主机目录树创建一个bash脚本。 drush dump-directory似乎是理想的,因为:
我知道Drush使用dump-dir进行MySQL转储。是否也可以命令Drush到rsync文件到同一目录?
可以在drushrc中配置转储目录,如下所示:
$options['dump-dir'] = '/path/to/dumpdir';
如何针对命令行进行逆向工程?
答案 0 :(得分:1)
您可以通过path-aliases
访问目录变量,例如:
$aliases['remote'] = array(
'site' => 'mysite',
'path-aliases' => array(
'%dump-dir' => '/path/to/dumps', // Can be webroot relative path also.
'%files' => 'sites/default/files',
'%private' => 'sites/default/private/files',
'%custom' => '/my/custom/path',
),
);
然后运行:
drush rsync @remote:%dump-dir/drup.sql.gz %dump-dir/drup.sql.gz
您可以通过以下方式测试它们:drush dd %%dump-dir