本日は Drupal ドキュメント日本語訳シリーズの一環として、本格的な Drupal 開発には欠かせない Drush のコマンドリファレンスを翻訳してご紹介したいと思います。
いまここを読んでいる方の中に「 Drupal は知ってるけど Drush って何?」という方もいらっしゃいるでしょうか? 本題に入る前に、そんな方のための「 Drush ひとこと解説」をかんたんにしてみたいと思います。
Drush とは
Drush (多くの人が「ドラッシュ」と読みます)とは Drupal の各種操作をコマンドライン上で行えるいわゆる「 CLI ツール」です。 サイトのセットアップやキャッシュのクリア、設定の変更や cron の実行、データベース CLI の立ち上げなど、 Drupal サイトの開発に便利な操作をコマンドラインから実行する機能を提供しています。
他のフレームワークをご存知の方は Ruby on Rails の rails
コマンドや WordPress の WP-CLI の Drupal 版と捉えていただくとよろしいかと思います。
ちなみに Drush という名前は Drupal Shell の省略形から来ているそうです。
Drush のインストール方法はここでは割愛しますが解説記事をいくつか書いていますので興味のある方はぜひ参考にしてみてください。
では、以下に Drush コマンドリファレンスを翻訳してご紹介いたします。 元記事はこちら。
なお今回の翻訳文は 2013 年 11 月 20 日最終更新版をもとにしています。 原文にも少し古くなっている箇所があるようですが今回は原則 原文のまま で翻訳している点にご留意ください。 意訳の部分もありますので原文の正確なニュアンスが知りたい方はぜひ原文の方をご覧いただければと思います。
Drush コマンドリファレンス
コマンドごとのヘルプを見るには drush help [command]
を実行してください。
例
drush dl cck zen
CCK モジュールと Zen テーマをダウンロードします。drush --uri=http://example.com status
example.com マルチサイトのステータスコマンドを表示します。drush help --pipe
スペース区切りのコマンド一覧です。
コマンドのフラグ(例えば drush sql-dump --skip-tables-key=common
)についての詳細は http://drush.ws/ を確認するか drush help コマンド名
を使ってください。
Options:
オプション 説明
- -r, --root= 使用する Drupal のルートディレクトリ(デフォルト: カレントディレクトリ)。
- -l, --uri= 使用する Drupal サイトの URI (マルチサイト環境でのみ必要)。
- -v, --verbose コマンドの情報を多めに出力。
- -d, --debug 内部的なメッセージを含むさらに多くの情報を出力。
- -q, --quiet 出力を一切出さない。
- -y, --yes 出てくるプロンプトすべてに
yes
と答える。 - -s, --simulate 関連するアクションすべてをシミュレートする(システムに実際の変更は加えない)。
- -i, --include Drush コマンドを探すサーチパスのリスト。
- -c, --config 使用するコンフィグファイルを指定する。 example.drushrc.php を参照のこと。
- -u, --user ログインユーザを指定する。名前でも数値でも OK 。
- -b, --backend 出力を一切出さず構造化されたデータを返す(内部的な使用限定)。
- -p, --pipe スクリプティング用にコンパクトなコマンド表現を使う。
Commands:
コマンド(かっこ内は省略形) 説明
help | このヘルプメッセージを表示。コマンドリストをひとつのコマンドファイルに制限する場合は `--filter` を使う(例: `--filter=pm` )。 |
---|---|
cron | すべての cron フックを実行。 |
updatedb (updb) | コマンドラインから update.php プロセスを実行。 |
status (st) | 現在の Drupal インストール環境を鳥瞰情報を表示。 |
script | php スクリプトを実行。 |
cache clear (cc) | すべてのキャッシュをクリア。 |
watchdog show (ws) | 最近のウォッチドッグログメッセージを表示。オプションで特定のタイプに絞り込み可。 |
watchdog delete (wd) | すべてのメッセージ、あるいは特定のタイプのメッセージを削除。 |
sync | Drupal ツリーを ssh でサーバー間に rsync する。 |
eval | Drupal のブートストラップ処理のあとに任意の php コードを評価。 |
enable (en) | ひとつ以上のモジュールを有効化。 |
disable (dis) | ひとつ以上のモジュールを無効化。 |
pm-uninstall | ひとつ以上のモジュールをアンインストール。 |
statusmodules (sm) | モジュールの有効/無効ステータスを出力。 |
refresh (rf) | アップデートステータス情報を更新。 |
updatecode (upc) | プロジェクトコードを更新。 |
update (up) | プロジェクトコードを更新し、必要なデータベース更新があればすべて適用する。 |
info | プロジェクトのリリース情報。 |
dl | コア Drupal や CCK 、 Zen などのプロジェクトをダウンロード。 |
test mail | すべてのテストを実行し、結果をチームにメール送信する。 |
test clean | 以前のテストの実行の結果残ったテーブルとファイルを削除。 |
sql-conf | データベース接続の詳細情報を表示。 |
sql-connect | DB に接続するための文字列。 |
sql-dump | mysqldump を使って Drupal DB を SQL としてエクスポート。 |
sql-query (sqlq) | サイトデータベースに対してクエリを実行。 |
sql-load | データベースをコピー。 |
sql-cli | Drupal と同じ認証で SQL コマンドライン・インタフェースを開く。 |
vget %var | _%var_ で始まるすべての変数の名前と値のリストを表示。 |
vset %var %val | _%var_ で始まるすべての変数の値を _%val_ にセット。 |
プラグインコマンド(モジュールが提供するもの)
Delete All
delete-all article
すべての article ノードを削除。delete-all all
すべてのタイプのノードを削除。delete-all --reset
すべてのタイプのノードを削除し、ノード、リビジョン、コメントのカウンタをリセット。delete-all users
ユーザを削除。
Devel
devel-download
FirePHP ライブラリを http://firephp.org/ からダウンロード。devel-reinstall
プロジェクトのリストを無効化、アンインストールしてからインストールする。fn-hook
与えられたフックの実装をリストアップし、選択されたフックのソースコードを探索する。fn-view
指定された関数やメソッドのソースコードを表示。devel-token
利用可能なトークンをリストアップ。
Devel Generate
generate-users
ユーザを作成。generate-taxonomy
タクソノミーを作成。generate-vocabs
ボキャブラリーを作成。generate-terms
指定されたボキャブラリーのタームを作成。generate-content
コンテンツを作成。generate-menu
メニューとメニューアイテムを作成。
Module Builder
mb
新しい Drupal モジュールのコードを生成。そこにはファイルヘッダやフック実装が含まれる。mbdl
module_builder のフックデータを更新。mb-list
module_builder が知っているフックをリストアップ。mb-dochooks
与えられたモジュールに必要なフックのコメントヘッダを追加。mb-docparams
パラメータの追加...作成中。mb-debug
module builder のデバッグ。そのときに必要なことをすべて行う。
Drush Make
make
makefile から Drupal サイトを作成。
Backup and Migrate
bam-backup
Backup and Migrate でサイトのデータベースをバックアップ。bam-restore
Backup and Migrate でサイトのデータベースをリストア。bam-destinations
利用可能なデスティネーションのリストを取得。bam-sources
利用可能なソースのリストを取得。bam-profiles
利用可能な設定プロファイルのリストを取得。bam-backups
以前に作成されたバックアップファイルのリストを取得。
Feed API
feedapi create
フィードを作成。feedapi refresh
フィードをリフレッシュ。feedapi parse
フィードをパースし結果を標準出力に出力。feedapi config
与えられたパーサあるいはプロセッサの設定を表示。
Statistics Pro
statspro aliases
現在のエイリアスカウントを表示。statspro comments
現在作成されているコメントのカウントを表示。statspro error
現在のエラーカウントを表示。statspro modules
現在インストールされているモジュールのカウントを表示。statspro nodes
現在作成されているノードのカウントを表示。statspro node_types
現在存在するノードタイプのカウントを表示。statspro pi
本日のページインプレッションカウントを表示。statspro sessions
本日のセッションカウントを表示。statspro terms
現在のタクソノミータームカウントを表示。statspro uerror
現在認証ユーザに表示されているエラーのカウントを表示。statspro upi
本日認証ユーザのページインプレッションのカウントを表示。statspro users
現在作成されているユーザのカウントを表示。statspro uwarning
本日認証ユーザに表示されている警告のカウントを表示。statspro warning
本日の警告カウントを表示。
Zenophile
zenophile
Zen サブテーマをすばやくかんたんに作成。zen
zenophile コマンドのエイリアス。
Omega Tools
omega-subtheme "New Theme Name"
HTML5 のサブテーマ( new_theme_name )をデフォルトの sites/all/themes に作成。omega-subtheme "New Theme Name" html5
HTML5 のサブテーマ( new_theme_name )をデフォルトの sites/all/themes に作成。omega-subtheme "New Theme Name" xhtml
XHTML のサブテーマ( new_theme_name )をデフォルトの sites/all/themes に作成。omega-subtheme "New Theme Name" --destination=example.com
HTML5 のサブテーマ( new_theme_name )をデフォルトの sites/exaple.com/themes に作成。
Node Export
ne-export
Node export を使ってノードをエクスポート。ne-import
Node export を使って以前にエクスポートされたノードをインポート。node-export
Node export を使ってノードをエクスポート。node-export-export
Node export を使ってノードをエクスポート。node-export-import
Node export を使って以前にエクスポートされたノードをインポート。
引数:
- nids : エクスポートしたいノード ID のスペース区切りのリスト。
オプション:
- --file : 出力ファイルのファイル名。これが与えられた場合はノードコードはファイルに( Drupal ルートに)出力され、提供されなかった場合は標準出力に出力される。
- --format : これが与えられた場合、ノードコードは特定のエクスポートフォーマットを使って出力される(例: serialize )。
- --status : 'status' のフィルタ: ノードが掲載となっているかどうかを表す論理値( 0 1 )。
- --promote : 'promote' のフィルタ: ノードがフロントページに出力される設定になっているかどうかを表す論理値( 0 1 )。
- --sticky : 'sticky' のフィルタ: ページへの表示時にリストのトップに表示される設定になっているかどうかを表す論理値(o 1 )。
- --translate : 'translate' のフィルタ: ノードの翻訳に更新の必要があるかどうかを表す論理値( 0 1 )。
- --language : 'language' のフィルタ: ノードの言語コード(例: de en-US )。
- --type : 'type' のフィルタ: ノードタイプのマシン名(例: story page )。
- --sql : SQL によるフィルタ(試験的): ノード ID を返す SQL クエリ文字列(例: "SELECT nid FROM nodes WHERE nid < 10")。
- --code : PHP コードによるフィルタ(試験的): ノード ID の配列または CSV 文字列を返す PHP コード(例: "custom_get_my_nids();")。 PHP タグを含めないこと。
募集しています
スタジオ・ウミは「Drupal」に特化したサービスを提供する Drupal のエキスパートチーム。
フルリモート&フレックス制だから、働く場所を選ばず時間の使い方も自由です。
そんなワークライフバランスの整った環境で、当ブログに書かれているような
様々な技術を共に学びながら、Drupalサイト開発に携わってみたい方を募集しています。
まずはお話だけでも大歓迎!ぜひお気軽にご連絡ください。