web-dev-qa-db-ja.com

インストール/有効化されたモジュールのリストを取得して、drushモジュールのインストールで新しいサイトを再作成する方法は?

drush pm-list次のように、モジュールの完全なリストを取得しますが、情報も多すぎます。

メールPrivatemsgフィルター(privatemsg_filter)7.x-1.4
メールPrivatemsg制限(privatemsg_limits)7.x-1.4
メールPrivatemsgロール(privatemsg_roles)7.x-1.4`

Notepad ++で編集してマクロを実行する必要があります...

モジュールリストが必要ですが、drushモジュール名はX_Yのみです

次のようなクリーンなリストを取得する方法はありますか?

module_a
module_b
module_c

のみ

そしてそれを次のように使うことができます:

drush en module_a module_b module_c
9
Bruno Vincent

OK、動作しました。使用するコマンドは次のとおりです。

drush pm-list --type=module --status=enabled --no-core --format=list

そして、あなたは使うことができます:

edit>>mark>>copy 

drushコンソールから。

3
Bruno Vincent
drush pm-list --status="enabled" --pipe
  • --status="enabled"拡張ステータスでフィルタリングします。選択肢:enableddisabledおよび/または 'not installed '。複数のカンマ区切り値を使用できます。 (つまり、--status="disabled,not installed")。

  • --pipe に相当 --format=list

  • --format="list"出力形式を選択します。利用可能:tablecsvjsonlistvar_exportyaml。デフォルトはtableです。

14
Елин Й.

質問の目的が(質問のタイトルのように)新しいサイトに再入力することである場合は、 drush make-generate コマンドを確認することをお勧めします。

マクロの編集や実行などの必要はありません(何らかの理由で結果を編集する必要がある場合でも、結果を編集できます)。

それについての興味深い記事については、 Drush Makeを毎日のルーチンで使用する方法 を参照してください。

2
Pierre.Vriens

module_list() 関数を使用してリストを取得できます

現在アクティブなモジュールのリストを返します。

通常、これはすべての有効なモジュールのリストを返します。ブートストラップの早い段階で呼び出されると、重要なモジュール(キャッシュされたページを生成するために必要なモジュール)のみのリストが返されます。

この関数のすべてのパラメーターはオプションであり、通常はデフォルトから変更しないでください。パラメーター

$ refresh:(オプション)モジュールリストを強制的に再生成するかどうか(管理者がシステム設定を変更した後など)。デフォルトはFALSEです。

$ bootstrap_refresh:(オプション)$ refreshがTRUEの場合、$ bootstrap_refreshをTRUEに設定すると、キャッシュページの「ブートストラップモード」でロードされたモジュールの削減されたセットを使用してモジュールリストが再生成されます。それ以外の場合、$ refreshをTRUEに設定すると、有効なモジュールの完全なリストが生成されます。

$ sort:(オプション)デフォルトでは、モジュールは重みとモジュール名で並べられます。このオプションをTRUEに設定すると、モジュール名のみで並べられたモジュールリストが返されます。

$ fixed_list:(オプション)モジュール名の配列が指定されている場合、これは指定されたモジュールのセットでモジュールリストをオーバーライドします。これは、$ refreshをTRUEに設定するか、新しい$ fixed_listを渡す次の呼び出しまで持続します。このパラメーターは、主に内部での使用を目的としています(たとえば、install.phpとupdate.php)。

0