键概念
.drush.inc
hook_drush_command()
参数和选项:drush_get_option()
此功能将用于演示Drush如何向控制台打印消息。 我们稍后将其修改以展示各种命令功能。
drush命令文件(
)demo_drush
>
function demo_drush_print_statement() { drupal_set_message(t('Hello world!')); }
。 drush从
>的文件中识别和加载函数>命令挂钩和回调demo_drush.drush.inc
实现(定义命令和配置)和由命令触发的回调函数。 让我们从demo_drush.drush.inc
开始:.drush.inc
这将定义一个名为的命令(词组为)。 回调函数(默认情况下,
)执行命令的逻辑:
hook_drush_command()
清除了drush缓存(hook_drush_command()
)后,运行
/** * Implements hook_drush_command(). */ function drush_demo_drush_command() { $items['drush-demo-command'] = array( 'description' => 'Demonstrates Drush command functionality.', 'aliases' => array('ddc'), ); return $items; }
drush-demo-command
参数和选项ddc
drush_drush_demo_command()
通过参数(强制性)和选项(可选)来增强您的命令。 让我们将它们添加到钩子中:
function demo_drush_print_statement() { drupal_set_message(t('Hello world!')); }
现在,drush ddc error --repeat=10
将语句类型设置为“错误”,然后重复10次。 更新demo_drush_print_statement()
和回调功能相应:
/** * Implements hook_drush_command(). */ function drush_demo_drush_command() { $items['drush-demo-command'] = array( 'description' => 'Demonstrates Drush command functionality.', 'aliases' => array('ddc'), ); return $items; }
用户输入
交互方式处理丢失参数:
/** * Callback for the drush-demo-command command. */ function drush_drush_demo_command() { demo_drush_print_statement(); }
> hook_drush_command()
>在钩子上添加示例:
... 'arguments' => array( 'type' => 'Statement type (error or success).', ), 'options' => array( 'repeat' => 'Number of statement repeats.', ), ...
结论
本教程涵盖了创建drush命令的基础知识。 探索高级功能,例如Bootstrap级别,模块依赖项和Drush API文档中的核心版本兼容性。
>常见问题(常见问题解答)(输入中这些问题已经写得很好,无需重写)
以上是Drupal:如何创建自己的drush命令的详细内容。更多信息请关注PHP中文网其他相关文章!