Drush commande pour afficher des alias?

34

Existe-t-il une drushcommande pour afficher les alias existants? Certains Google n'a rien révélé.

utilisateur1359
la source
$ drush site-alias @self
monymirza
'drush sa @self --full --with-db --with-optional' générera un modèle que vous pouvez ajouter à ~ / .drush / aliases.drushrc.php pour une utilisation ultérieure. N'oubliez pas de changer la clé 'self' dans la table par un nom d'alias unique pour votre site.
Interdruper

Réponses:

47

Vous pouvez l'utiliser dans le terminal

drush sa

Par exemple sur mon serveur dev:

- drush sa
@8080
@commons_3_dev
@none
@w2

Les alias sont définis dans un fichier appelé aliases.drushrc.php. Pour moi, cela se trouve dans / usr / local / share / drush /. Selon la manière dont vous avez installé Drush et la distribution sur laquelle vous vous trouvez, cela peut différer.

Vous pouvez configurer des alias de cette manière dans ce fichier

$aliases['8080'] = array(
'uri'=>'server.com:8080',
'root'=>'/var/www/html_webtest2',
);

$aliases['w2'] = array(
'uri'=>'webtest2.server.com.edu',
'root'=>'/var/www/html_webtest2',
);

$aliases['commons_3_dev'] = array(
'uri'=>'yourserver.com/c3d7/',
'root'=>'/var/www/html_commons_3_dev',
);

Pour plus de plaisir, vous pouvez les chaîner ensemble pour des sauvegardes sur l'ensemble du serveur. Par exemple, je fais une grande sauvegarde de tous les sites aliasés comme celui-ci

 drush sa | egrep "(@|default)" | egrep -v "(@none|@self) | xargs -L1 drush arb

Pris individuellement

 drush sa  # list site aliases
 | egrep "(@|default)"  # include default and any line containing a @ mark
 | egrep -v "(@none|@self)" # remove any lines with @none or @self 
 | xargs -L1 drush arb # with each line run drush archive-backup

Pour trouver le chemin et d'autres informations, utilisez un peu de pipping:

drush sa | xargs -I {}  sh -c "echo {}; drush {} st"

Pour le réduire à la recherche de chemins:

    drush sa | xargs -I {}  sh -c "echo {}; drush {} st" | egrep "(@|path)"
@8080
 Site path                     :  sites/8080.webtest2               
 File directory path           :  sites/8080.webtest2/files         
 Private file directory path   :  /var/www/drupal_private_files                   
@commons_3_dev
 Site path              :  sites/default                                          
 File directory path    :  sites/default/files                                    
@none
@w2
 Site path              :  sites/default                                          
 File directory path    :  sites/default/files 

mise à jour

Un peu tard mais je voulais dire ne pas oublier drush @sites st. Je crois que le @sitesparamètre agira sur tout ce qui se trouve dans le dossier des sites. Pense

drush @sites cron -y # runs cron on each root/sites/site
drush @sites rf 
Meule
la source
Il serait également utile de savoir quel chemin de système de fichiers ces sites sa
mappent
1
Essayez drush @alias st (pour le statut)
Rick
Oui, mais je ne veux pas avoir à vérifier chaque alias individuellement pour voir si c'est celui que je cherche. Je traite beaucoup d'alias dans un environnement multi-sites et multi-utilisateurs. Celui que je veux peut même pas exister!
user1359
4
Essayez ceci: drush sa | xargs -I {} sh -c "drush {} st"
Rick
1
Soyez créatif avec des pipes et des grep. Parfois, les commandes bash les plus simples qui sont assemblées vous donneront des informations merveilleuses.
Rick
2

Si vous êtes comme moi, vous voulez aussi tous les détails…

Essayez drush site-alias --tableou le raccourci drush sa --table.

Vérifiez GitHub ou drush topic aliasespour plus d’informations.

Rob Colburn
la source
Je sais que c'est un fil ancien, mais si quelqu'un atterrit ici via Google, le paramètre n'est pas --table mais drush sa --format=table. Et pour vous éviter de perdre du poids, vous pouvez utiliser les options --fields et --field-labels = 0 pour rester concis.
Dan Shumaker
@ DanShumaker Je n'ai pas travaillé sur Drupal depuis quelques années maintenant. Ne hésitez pas à donner une nouvelle réponse, et je vais voter à la vôtre.
Rob Colburn