Commande Drush pour télécharger ET activer un module

47

Pour télécharger et installer un module, je lance:

drush dl module_name
drush en module_name -y

Je mets cela dans une fonction de script Bash et appelle simplement "drin module_name" pour simplifier.

function drin(){
  drush dl $1
  drush en $1 -y
}

Existe-t-il une commande en une ligne dans Drush pour télécharger et activer un module?

radj
la source
Plusieurs améliorations ont été proposées dans le téléchargement et l’activation. Voir ce numéro drupal.org/node/1364814
jonhattan
Il y a une mise à jour dans le dernier drush qui fait cela. Voir la nouvelle réponse sélectionnée. Merci!
vendredi

Réponses:

83

Ce qui suit va télécharger et activer le module:

drush en module_name -y

Edit: La commande download (dl) n'est pas nécessaire. Lorsque vous essayez d'activer un module qui n'est pas encore téléchargé, Drush vous demandera si vous souhaitez le télécharger, puis vous le demandera si vous souhaitez l'activer. Le -y automatise les réponses "oui" à ces questions.

Cela a été ajouté à Drush 6.0.0 (#1364814 by eiriksm, jonhattan: Added Extend pm-enable to offer downloading the project for missing extensions.)

DrupalDrop
la source
Pouvez-vous préciser en quoi cela diffère des autres réponses?
mpdonadio
2
Je pense que ceci est une nouvelle implémentation. Au moment où j'ai posté cette assurance qualité, ce n'était pas possible.
Radj
1
Cela n'a pas fonctionné pour moi, en utilisant une nouvelle installation de drush à partir du référentiel.
RevNoah
2
Cela n'a pas fonctionné. J'ai essayé ce qui suit: drush en schema -yet j'ai obtenu ceci: le schéma n'a pas été trouvé et ne sera pas activé. [avertissement] Aucune extension ne pouvait être activée. [ok]
cdmo
1
D'accord, cette approche fonctionne bien sur Drush 6.3.0.
cdmo
19
drush dl module_name && drush en module_name -y
David Thomas
la source
1
Merci pour cela, mais cela revient à taper deux fois les commandes ou à les séparer par un point-virgule. Je cherchais une sous-commande réelle drush.
Radj
Oui, bien que votre question initiale, avant de la modifier, demandait une "solution à une ligne", ce qui est le cas.
David Thomas
Ouais je sais. Je suis désolé de la confusion. C'est pourquoi je l'ai édité pour clarifier et ne pas induire en erreur les prochains contributeurs.
Radj
7

Le téléchargement et l'activation d'un module peuvent être réalisés avec drush en project_name. Il demande une confirmation. si vous ne voulez pas confirmer, utilisez le -yparamètre.

drush en project_name -y

Vous pouvez télécharger plus de projets avec la même commande.

drush en rules views token -y

Pour obtenir une liste de certaines commandes Drush de base, voir Commandes drush de base .

Krishna Kanth
la source
1
Oui, 'drush en' fonctionne avec les versions les plus récentes de drush
David Thomas
1

Dans Drush 9, vous téléchargez un module avec composer require drupal/module_name.

Voir la nouvelle documentation pour Drush 9 sur drush pm:download.

Après, vous devrez activer le module avec drush pm:enable module_name.

* Les autres commandes utiles pour les modules sont:

  • Voir tous les modules installés

    drush pm:list
  • Désinstaller un module

    drush pm:uninstall module_name
Manuel Abascal
la source
0

dans Drupal 8, vous n'utilisez plus Drush. Utilisez à la composer require drupal/module_nameplace.

Jason
la source
Cela le télécharge mais ne l’active pas. Comment l'activer en ligne de commande pour D8?
Christia