Натисніть команду, щоб показати псевдоніми?


34

Чи є drushкоманда показати наявні псевдоніми? Деякий Гуглінг нічого не з'явив.


$ drush site-alias @self
монімірза

'drush sa @self --full --with-db --with-optional' створить шаблон, який ви можете додати до ~ / .drush / aliases.drushrc.php для подальшого використання. Не забудьте змінити ключ "Я" в таблиці на унікальну назву псевдоніма для вашого сайту.
Interdruper

Відповіді:


47

Ви можете використовувати це в терміналі

drush sa

Наприклад, на моєму сервері розробки:

- drush sa
@8080
@commons_3_dev
@none
@w2

Псевдоніми встановлюються у файлі, який називається aliases.drushrc.php. Для мене це знаходиться в / usr / local / share / drush /. Залежно від того, як ви встановили Drush і на якому дистрибутиві ви знаходитесь, це може відрізнятися.

Ви можете встановити псевдоніми таким чином всередині цього файлу

$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',
);

Щоб отримати більше задоволення, ви можете зв’язати їх разом для резервного копіювання на сервері. Наприклад, я створюю велику резервну копію для всіх подібних сайтів

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

Приймається індивідуально

 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

Щоб знайти шлях та іншу інформацію, скористайтеся трохи провідним способом:

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

Щоб звузити його до пошуку шляхів:

    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 

оновлення

Трохи пізно, але я хотів сказати, що не забувайте drush @sites st. Я вірю, що @sitesпараметр буде діяти на все, що знаходиться в папці сайтів. Подумайте

drush @sites cron -y # runs cron on each root/sites/site
drush @sites rf 

Було б також зручно знати, на який шлях до файлової системи відображаються ці saкоманди з команди :)
user1359

1
Спробуйте drush @alias st (для статусу)
Рік

так, але мені не хочеться перевіряти кожен псевдонім окремо, щоб побачити, чи це той, кого я шукаю. Я маю справу з безліччю псевдонімів у багатокористувацькому, багатокористувацькому середовищі. Той, кого я хочу, може навіть не існувати!
user1359

4
Спробуйте це: drush sa | xargs -I {} sh -c "drush {} st"
Рік

1
Будьте креативні з трубами та грейпом. Іноді найпростіші команди bash, складені разом, дадуть вам чудову інформацію.
Рік

2

Якщо ти такий, як я, ти хочеш і всіх деталей ...

Спробуйте drush site-alias --tableабо ярлик drush sa --table.

Перевірте GitHub або drush topic aliasesдля отримання додаткової інформації.


Я знаю, що це давня нитка, але якщо хтось приземлиться тут через google - параметр не --table, але drush sa --format=table. А щоб заощадити на підйомі важких ваг, ви можете використовувати параметри --fields та --field-labels = 0, щоб уникнути стислості.
Ден Шумкер

@DanShumaker Я не працював над Drupal вже кілька років. Не соромтесь дати нову відповідь, і я проголошу вашу.
Роб Колберн
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.