n98 magerun cli 工具提供了一些方便的工具來從命令列使用 Magento。
最新版本 | |
發展科 |
開發是在開發分支中完成的。
軟體僅與 Magento 1 一起運作。
如果您使用 Magento 2,請使用另一個穩定版本 (https://github.com/netz98/n98-magerun2)。
這些工具將自動針對多個 PHP 版本進行測試。它目前在各種 Linux 發行版和 Mac OS X 中運行。
我們針對此版本測試該工具:
安裝工具有以下三種方式:
從檔案伺服器下載最新穩定的 N98-Magerun phar 檔案:
wget https://files.magerun.net/n98-magerun.phar
或者如果您喜歡使用 Curl:
curl -O https://files.magerun.net/n98-magerun.phar
透過將 SHA256 校驗和與 https://files.magerun.net/ 網站上的校驗和進行比較來驗證下載:
shasum -a256 n98-magerun.phar
如果它顯示與網站上相同的校驗和,則您已成功下載檔案。
現在您可以讓 phar 檔案可執行:
chmod +x ./n98-magerun.phar
基本安裝現已完成,您可以驗證它:
./n98-magerun.phar --version
該指令應該會成功執行並顯示 N98-Magerun 的版本號,如下所示:
n98-magerun version 2.3.0 by valantic CEC
您現在已經成功安裝了Magerun!您可以進一步自訂安裝,例如在系統範圍內安裝它並啟用自動完成 - 請繼續閱讀有關這些功能和其他功能的更多資訊。
如果您想在系統範圍內使用該命令,可以將其複製到 /usr/local/bin。
sudo cp ./n98-magerun.phar /usr/local/bin/
Debian/suhosin:
在某些使用 suhosin 編譯的 Debian 系統上,必須將 phar 擴充功能加入白名單。
將其新增至您的 php.ini 檔案:
suhosin.executor.include.whitelist = " phar "
您不喜歡這個檔案名稱?
只需將其重命名為您想要的任何名稱即可。或者更好:建立一個別名,以便原始命令名稱仍然有效。如果您與其他使用者交換使用 magerun 的腳本,這會很有用,因為規範名稱是 n98-magerun.phar,使用者群組中的一些常見別名是 magerun 甚至 mr。
在 Magento(或任何其他)專案中需要 Magerun,然後您可以從供應商的 bin 資料夾中執行它:
composer require n98/magerun
# ...
./vendor/bin/n98-magerun --version
n98-magerun version 1.97.0 by netz98 new media GmbH
替代源安裝:
https://github.com/netz98/n98-magerun/wiki/Install-from-source-with-Composer
首先你需要安裝自製程式:http://brew.sh/
安裝 homebrew-php 點選:https://github.com/Homebrew/homebrew-php#installation
一旦安裝了自製程式和水龍頭,您就可以使用它來安裝工具:
brew install n98-magerun
現在您可以使用以下工具:
$ n98-magerun {command}
從 1.1.0 版本開始,我們在 phar 檔案中提供了一個自我更新腳本:
$ n98-magerun.phar 自我更新
如果檔案是在系統範圍內安裝的,請不要忘記「sudo」。
查看實際效果:http://youtu.be/wMHpfKD9vjM
用於使用 Magerun 自動完成的文件可以在 res/autocompletion 資料夾中找到,下面是有關兩個特定文件(Bash、Phpstorm)的更多信息,還有更多信息(例如 Fish、Zsh)。
Bash 補全可以預先生成,所有指令及其各自的選項都可以在選項卡上使用。若要完成選項,請鍵入兩個破折號(「--」),然後按 Tab 鍵。
要安裝完成文件,請將n98-magerun.phar.bash複製到 bash compatdir 資料夾以進行自動完成。
在我的 Ubuntu 系統上,可以使用以下命令來完成此操作:
# cp res/autocompletion/bash/n98-magerun.phar.bash /etc/bash_completion.d
具體資料夾可以透過pkg-config取得:
# pkg-config --variable=compatdir bash-completion
詳細資訊可在 bash-completions 常見問題中找到:https://github.com/scop/bash-completion#faq
PHPStorm 的命令列工具會自動完成 XML 檔案存在於子資料夾res/autocompletion/phpstorm中。將n98_magerun.xml複製到 phpstorm 設定資料夾中。
Linux 和 Mac:~/.WebIde80/config/componentVersions
您也可以在設定選單上新增 XML 內容。如需更多說明,請閱讀此部落格文章:http://blog.jetbrains.com/webide/2012/10/integrating-composer-command-line-tool-with-phpstorm/
所有指令都會嘗試偵測目前的 Magento 根目錄。如果您安裝了多個 Magento,則必須將工作目錄變更為首選安裝。
https://github.com/netz98/n98-magerun/wiki/Commands
您可以透過以下方式列出所有可用命令:
$ n98-magerun.phar 列表
如果您沒有在系統範圍內安裝 .phar 文件,您可以使用 PHP CLI 解釋器來呼叫它:
php n98-magerun.phar 列表
全域配置參數:
--根目錄 強制 Magento 根目錄。沒有自動檢測。 --跳過配置 不要載入任何自訂配置。 --跳過根檢查 不要檢查 n98-magerun 是否以 root 身分執行。 --開發者模式 在開發者模式下實例化 Magento
$ n98-magerun.phar open-browser [store]
透過電子郵件地址載入基本客戶資訊。
$ n98-magerun.phar customer:info [email] [website]
為商店前端建立新客戶/使用者。
$ n98-magerun.phar customer:create [email] [password] [firstname] [lastname] [website]
例子:
$ n98-magerun.phar customer:create [email protected] password123 John Doe base
這將刪除給定 ID/電子郵件的客戶、刪除所有客戶或刪除某個 ID 範圍內的所有客戶。
$ n98-magerun.phar delete [-a | --all] [-f | --force] [-r | --range] [id]
範例:
$ n98-magerun.phar customer:delete 1 # Will delete customer with Id 1
$ n98-magerun.phar customer:delete [email protected] # Will delete customer with that email
$ n98-magerun.phar customer:delete --all # Will delete all customers
$ n98-magerun.phar customer:delete --range # Will prompt for start and end Ids for batch deletion
產生虛擬客戶。您可以指定計數和區域設定。
$ n98-magerun.phar customer:create:dummy count locale [website]
支援的區域設定:
- cs_CZ
- RU_RU
- BG_BG
- zh_CN
- 它_IT
- SR_RS
- sr_Cyrl_RS
- sr_Latn_RS
- PL_PL
- en_GB
- 德_DE
- sk_SK
- fr_FR
- es_AR
- 德_AT
列出客戶。輸出限制為 1000(可以透過覆蓋配置進行更改)。如果給予搜尋參數,則會過濾客戶(按名字、姓氏和電子郵件進行搜尋)。
$ n98-magerun.phar customer:list [--format[ = " ... " ]] [search]
$ n98-magerun.phar customer:change-password [email] [password] [website]
$ n98-magerun.phar db:info [setting]
論點
設定 僅輸出指定設定的值
使用 mysqldump 轉儲配置的 Magento 資料庫。
論點
檔案名稱 轉儲檔案名稱
選項
--新增時間 在檔案名稱中新增時間(僅當未提供檔案名稱時) —compression (-c) 使用支援的演算法之一壓縮轉儲文件
--僅指令 僅列印 mysqldump 命令。不執行 --print-only-filename 執行並列印除轉儲檔案名稱之外的輸出
--無單筆交易 不要使用單一事務(不推薦,這是阻塞的) —人類可讀 使用單一插入,每行包含列名稱。
--標準輸出 轉儲到標準輸出 —strip 要剝離的表(僅轉儲這些表的結構)
- --力 (-f)
- 如果定義了所有選項,則不提示
$ n98-magerun.phar db:dump
僅 mysqldump 指令:
$ n98-magerun.phar db:dump --only-command [filename]
或直接輸出到標準輸出:
$ n98-magerun.phar db:dump --stdout
使用壓縮(必須安裝 gzip cli 工具):
$ n98-magerun.phar db:dump --compression= " gzip "
轉儲資料庫並排除一些表。這對於開發很有用。
用空格分隔每個要刪除的表。您可以使用 * 和 ? 等通配符在表名稱中刪除多個表。此外,您還可以指定以 @ 開頭的預定義表組 範例:“dataflow_batch_export unimportant_module_* @log”
$ n98-magerun.phar db:dump --strip= " @stripped "
可用的表組:
擴充:https://github.com/netz98/n98-magerun/wiki/Stripped-Database-Dumps
查看實際效果:http://youtu.be/ttjZHY6vThs
使用 mysql cli 用戶端將 SQL 檔案匯入到目前配置的資料庫中。
$ n98-magerun.phar db:dump
$ n98-magerun.phar db:import [--only-command] [filename]
使用解壓縮(必須安裝gzip cli工具):
$ n98-magerun.phar db:import --compression= " gzip " [filename]
優化「人類可讀」轉儲:
$ n98-magerun.phar db:import --optimize [filename]
使用 local.xml 中的資料庫設定開啟 MySQL 控制台用戶端
$ n98-magerun.phar db:console [--no-auto-rehash]
--no-auto-rehash
synonym for calling * mysql * client with the -A parameter to skip hashing for object auto-completion.
建立目前配置的資料庫
$ n98-magerun.phar db:create
刪除 local.xml 中配置的資料庫。
$ n98-magerun.phar db:drop [-f | --force]
對目前配置的資料庫執行 SQL 查詢。將 SQL 用單引號或雙引號括起來。
如果您的查詢產生結果(例如 SELECT 語句),則會傳回 mysql cli 工具的輸出。
--僅命令 | 僅列印 mysql 指令。不執行 |
$ n98-magerun.phar db:query [--only-command] [query]
查看 Magento 實例最重要的 MySQL 變數。
$ n98-magerun.phar db:variables [--format[ = " ... " ]] [--rounding[ = " ... " ]] [--no-description] [search]
此命令對於列印有關當前資料庫的重要伺服器狀態資訊非常有用。
$ n98-magerun.phar [--format[ = " ... " ]] [--rounding[ = " ... " ]] [--no-description] [search]
建立包含媒體資料夾內容的 ZIP 檔案。
$ n98-magerun.phar media:dump [--strip] [filename]
如果設定了 strip 選項,則排除下列資料夾:
創建新的禮品卡池
$ n98-magerun.phar giftcard:pool:generate
$ n98-magerun.phar giftcard:create [--website[ = " ... " ]] amount
您可以指定網站 ID 或使用預設值
$ n98-magerun.phar giftcard:info [--format[ = " ... " ]] code
$ n98-magerun.phar giftcard:remove code
$ n98-magerun.phar index:list [--format[ = " ... " ]]
按下索引器代碼索引。代碼是可選的。如果您不指定代碼,您可以從清單中選擇索引器。
$ n98-magerun.phar index:reindex [code]
從 1.75.0 開始,可以用逗號分隔程式碼來執行多個索引器。
IE
$ n98-magerun.phar index:reindex catalog_product_attribute,tag_summary
如果沒有提供索引作為參數,您可以透過「數字」從選單中選擇索引器,例如第一個和第三個索引器的「1,3」。
循環所有 Magento 索引並觸發重新索引。
$ n98-magerun.phar index:reindex:all
列出可用的 Mview 索引器及其目前版本以及更改日誌佇列中有多少個索引器。
$ n98-magerun.phar index:list:mview [--format[ = " ... " ]]
透過Mview表代碼建立索引。這將忽略所有鎖定並觸發更改日誌索引器。
$ n98-magerun.phar index:reindex:mview [table_code]
$ n98-magerun.phar local-config:generate
將合併的 XML 配置轉儲到標準輸出。對於查看所有 XML 很有用。
$ n98-magerun.phar [xpath]
目錄模組配置:
$ n98-magerun.phar config:dump global/catalog
查看 XML 中的模組順序:
$ n98-magerun.phar config:dump modules
將輸出寫入檔案:
$ n98-magerun.phar config:dump > extern_file.xml
$ n98-magerun.phar config:set [--scope[ = " ... " ]] [--scope-id[ = " ... " ]] [--encrypt] [--force] path value
- 範圍 | 配置值的範圍(預設值:「default」| 可以是「default」、「websites」、「stores」) |
--範圍 ID | 配置值的範圍 ID(預設值:“0”) |
- 加密 | 使用 local.xml 的加密金鑰加密設定值 |
- 力量 | 允許為網站和商店建立非標準範圍 ID |
$ n98-magerun.phar config:get [--scope = " ... " ] [--scope-id = " ... " ] [--decrypt] [--format[ = " ... " ]] [path]
- 範圍 | 配置值的範圍(預設、網站、商店) |
--範圍 ID | 配置值的範圍 ID |
--解密 | 使用 local.xml 的加密金鑰解密設定值 |
--更新腳本 | |
輸出為更新腳本行 | |
--magerun-腳本 | |
與 config:set 一起使用的輸出 | |
- 格式 | 輸出為 json、xml 或 csv |
例子:
$ n98-magerun.phar config:get web/ * --magerun-script
$ n98-magerun.phar config:delete [--scope[ = " ... " ]] [--scope-id[ = " ... " ]] [--all] [--force] path
- 範圍 | 配置範圍(預設、網站、商店) |
--範圍 ID | 配置值的範圍 ID |
- 全部 | 刪除路徑的所有條目(忽略 --scope 和 --scope-id) |
- 力量 | 允許刪除網站和商店的非標準範圍 ID |
搜尋系統配置說明。
$ n98-magerun.phar config:search text
$ n98-magerun.phar cache:list
清除過期的快取條目。
如果您只想清理一種快取類型:
$ n98-magerun.phar cache:clean [--reinit] [--no-reinit] [ < code > ]
如果您想一次清理多種快取類型:
$ n98-magerun.phar cache:clean [--reinit] [--no-reinit] [ < code > ] [ < code > ] ...
如果您想刪除所有快取條目,請使用cache:flush
執行cache:list指令查看所有程式碼。
刷新整個快取。
$ n98-magerun.phar cache:flush [--reinit] [--no-reinit]
$ n98-magerun.phar cache:list [--format[ = " ... " ]]
$ n98-magerun.phar cache:disable [code]
如果沒有指定代碼,所有快取類型都將被停用。執行cache:list指令查看所有程式碼。
$ n98-magerun.phar cache:enable [code]
如果未指定代碼,則將啟用所有快取類型。執行cache:list指令查看所有程式碼。
此命令可讓您調查快取中儲存的內容。它會列印出一個帶有快取 ID 的表。
$ cache:report [-t | --tags] [-m | --mtime] [--filter-id[ = " ... " ]] [--filter-tag[ = " ... " ]] [--fpc]
按 ID 列印儲存的快取條目。
$ cache:view [--unserialize] [--fpc] id
如果值被序列化,您可以使用 --unserialize 選項強制獲得漂亮的輸出。
在 cms 區塊上切換“is_active”
$ n98-magerun.phar cms:block:toggle [block_id]
“block_id”可以是實體 ID 或“識別符”
列出所有 CMS 區塊
$ n98-magerun.phar cms:block:list [--format[ = " ... " ]]
切換演示店通知
$ n98-magerun.phar design:demo-notice [store_code]
$ n98-magerun.phar admin:user:list [--format[ = " ... " ]]
$ n98-magerun.phar admin:user:create [username] [email] [password] [firstname] [lastname] [role]
$ n98-magerun.phar admin:user:change-password [username] [password]
$ n98-magerun.phar admin:user:delete [email | username] [-f]
ID 可以是電子郵件或使用者名稱。該命令將首先嘗試透過用戶名尋找用戶,如果找不到,它將嘗試透過電子郵件尋找用戶。如果省略 ID,系統會提示您輸入 ID。如果省略強制參數“-f”,系統將提示您確認。
$ n98-magerun.phar admin:user:change-status [--activate] [--deactivate] [email | username]
切換後端使用者的活動狀態。 ID 可以是電子郵件或使用者名稱。該命令將首先嘗試透過用戶名尋找用戶,如果找不到,它將嘗試透過電子郵件尋找用戶。如果省略 ID,系統會提示您輸入 ID。
$ n98-magerun.phar admin:user:lock [username] [lifetime]
將管理員使用者鎖定 [lifetime] 中指定的天數。如果未提供,生命週期將預設為 31 天。
$ n98-magerun.phar admin:user:lockdown [lifetime] [--dry-run]
將系統中的所有管理員使用者鎖定 [lifetime] 中指定的天數。如上所述,如果未提供,則預設為 31 天。
謹慎使用!首先使用 --dry-run 選項進行測試。
$ n98-magerun.phar admin:user:unlock [username]
釋放管理員的密碼鎖定(留空以解鎖所有管理員)。
切換管理員通知。
$ n98-magerun.phar admin:notifications
如果未提供選項,它將在每次呼叫時切換模式。
$ n98-magerun.phar sys:maintenance [--on] [--off]
提供版本和版本或配置的快取後端等資訊。
$ n98-magerun.phar sys:info [key]
僅列印一個值,例如版本。
$ n98-magerun.phar sys:info version
列出所有商店視圖。
$ n98-magerun.phar sys:store:list [--format[ = " ... " ]]
列出每個商店的基本網址。
$ n98-magerun.phar sys:store:config:base-url:list [--format[ = " ... " ]]
列出所有網站。
$ n98-magerun.phar sys:website:list [--format[ = " ... " ]]
列出 config.xml 檔案中定義的所有 cronjobs。
$ n98-magerun.phar sys:cron:list [--format[ = " ... " ]]
透過程式碼運行 cronjob。
$ n98-magerun.phar sys:cron:run [--schedule] [job]
如果沒有傳遞作業參數,您可以從清單中選擇一個作業。查看實際效果:http://www.youtube.com/watch?v=QkzkLgrfNaM 如果存在選項計劃,則不會啟動 cron,而是立即在 magento crontab 中計劃。
最後執行的 cronjobs 及其狀態。
$ n98-magerun.phar sys:cron:history [--format[ = " ... " ]] [--timezone[ = " ... " ]]
$ n98-magerun.phar sys:url:list [--add-categories] [--add-products] [--add-cmspages] [--add-all] [stores] [linetemplate]
範例:
$ n98-magerun.phar sys:url:list --add-products 4
$ n98-magerun.phar sys:url:list --add-all 4,5 ' {host},{path} ' > urls.csv
運行所有設定腳本(無需調用前端)。如果您在啟用維護模式的情況下更新系統,則此命令非常有用。
$ n98-magerun.phar sys:setup:run
增量運行安裝腳本。 (無需調用前端)。此命令單獨執行每個新的安裝腳本,以提高安裝資源系統的透明度,並減少 PHP 失敗創建無效資料庫狀態的機會。
$ n98-magerun.phar sys:setup:incremental [--stop-on-error]
將模組版本與 core_resource 表中儲存的設定版本進行比較,並顯示版本不符。
$ n98-magerun.phar sys:setup:compare-versions [--ignore-data] [--errors-only] [--log-junit = " ... " ] [--format[ = " ... " ]]
更改一個或所有模組資源設定的版本。如果您可能由於偵錯而想要重新執行升級腳本,則此命令非常有用。或者,您必須手動更改資料庫中的行。
$ n98-magerun.phar sys:setup:change-version module version [setup]
設定參數預設為給定模組的“所有資源”。
刪除一個或所有模組資源設定的條目。如果您可能由於偵錯而想要再次重新執行安裝腳本,則此命令非常有用。或者,您必須手動從資料庫中刪除該行。
$ n98-magerun.phar sys:setup:remove module [setup]
設定參數預設為給定模組的“所有資源”。
$ n98-magerun.phar sys:check
隱藏/顯示 CMS 橫幅
$ n98-magerun.phar cms:banner:toggle < banner_id >
逐頁發布 ID 和修訂版本。
$ n98-magerun.phar cms:page:publish < page_id > < revision_id >
對於透過 cron 作業自動發布頁面很有用。
使用初始化的 Magento 管理儲存開啟 PHP 互動式 shell。
$ n98-magerun.phar dev:console
看實際效果:http://www.youtube.com/watch?v=zAWpRpawTGc
此指令僅適用於 PHP 5.4 使用者。
切換商店的 CSS 合併設置
$ n98-magerun.phar dev:merge-css [store_code]
切換商店的 JS 合併設置
$ n98-magerun.phar dev:merge-js [store_code]
切換商店的調試模板提示設置
$ n98-magerun.phar dev:template-hints [store_code]
切換調試模板提示阻止商店的設置
$ n98-magerun.phar dev:template-hints-blocks [store_code]
商店前端的切換設定:
$ n98-magerun.phar dev:translate:shop [store_code]
切換管理區域:
$ n98-magerun.phar dev:translate:admin
將已儲存的資料庫翻譯資料匯出到文件中。
$ n98-magerun.phar dev:translate:export [locale] [filename]
切換分析器以調試商店:
$ n98-magerun.phar dev:profiler [--on] [--off] [--global] [store]
顯示交易電子郵件範本的使用報告:
$ n98-magerun.phar dev:email-template:usage --format[ = FORMAT]
啟用/停用商店的 system.log 和 exception.log:
$ n98-magerun.phar dev:log [--on] [--off] [--global] [store]
顯示日誌檔案的大小:
$ n98-magerun.phar dev:log:size [--human] [log_filename]
透過 lib/Varien/Db/Adapter/Pdo/Mysql.php 啟用/停用 MySQL 查詢日誌記錄
$ n98-magerun.phar dev:log:db [--on] [--off]
為屬性產生腳本:
$ n98-magerun.phar dev:setup:script:attribute entityType attributeCode
IE
$ n98-magerun.phar dev:setup:script:attribute catalog_product color
目前僅支援catalog_product實體類型。
列出所有 EAV 屬性:
$ n98-magerun.phar eav:attribute:list [--filter-type[ = " ... " ]] [--add-source] [--add-backend] [--format[ = " ... " ]]
查看特定屬性的資料:
$ n98-magerun.phar eav:attribute:view [--format[ = " ... " ]] entityType attributeCode
刪除一個屬性:
$ n98-magerun.phar eav:attribute:remove entityType attributeCode
如果多個屬性屬於同一類型,您也可以一次刪除它們
$ n98-magerun.phar eav:attribute:remove entityType attributeCode1 attributeCode2 ... attributeCode10
PhpStorm 程式碼完成-> 元檔案產生。
$ n98-magerun.phar dev:ide:phpstorm:meta [--meta-version = (old | 2016.2+)] [--stdout]
為 PhpStorm 自動完成產生元資料檔(預設版本:2016.2+)
列印 var/reports 資料夾中的報告計數。
$ n98-magerun.phar dev:report:count
將給定類型和分組類別名稱解析為類別名,這對於偵錯重寫很有用。
如果解析的類別不存在,將顯示一則訊息訊息。
$ n98-magerun.phar dev:class:lookup < block | model | helper > < name >
例子:
$ n98-magerun.phar dev:class:lookup model catalog/product
允許對商店視圖使用符號連結:
$ n98-magerun.phar dev:symlinks [--on] [--off] [--global] [store_code]
可以透過不允許 store_code 參數來設定全域範圍:
$ n98-magerun.phar dev:symlinks
建立一個空模組並將其註冊到目前的 Magento 商店中:
$ n98-magerun.phar dev:module:create [--add-controllers] [--add-blocks] [--add-helpers] [--add-models] [--add-setup] [--add-all] [--modman] [--add-readme] [--add-composer] [--author-name[ = " ... " ]] [--author-email[ = " ... " ]] [--description[ = " ... " ]] vendorNamespace moduleName [codePool]
代碼池預設為本地。
例子:
$ n98-magerun.phar dev:module:create MyVendor MyModule
在 .modman 資料夾中執行此命令。
$ n98-magerun.phar dev:code:model:method [modelName]
透過名稱或程式碼池啟用或停用 app/etc/modules/*.xml 中的模組:
$ n98-magerun.phar dev:module:enable [--codepool = " ... " ] moduleName
$ n98-magerun.phar dev:module:disable [--codepool = " ... " ] moduleName
範例:
$ n98-magerun.phar dev:module:disable MyVendor_MyModule
$ n98-magerun.phar dev:module:disable --codepool= " community "
暗示
如果指定了 --codepool 選項,則程式碼池中的所有模組都會受到影響。
列出所有已安裝的模組以及程式碼池和版本
$ n98-magerun.phar dev:module:list [--codepool[ = " ... " ]] [--status[ = " ... " ]] [--vendor = [ = " ... " ]] [--format[ = " ... " ]]
列出所有已註冊的類別重寫。
$ n98-magerun.phar dev:module:rewrite:list [--format[ = " ... " ]]
列出所有重複的重寫並告訴您 Magento 載入了哪個類別。該命令按照模組依賴關係的順序檢查類別繼承。
$ n98-magerun.phar dev:module:rewrite:conflicts [--log-junit = " ... " ]
顯示給定模組所依賴的模組列表
$ n98-magerun.phar dev:module:dependencies:on [-a | --all] [--format[ = " ... " ]] moduleName
顯示依賴模組的模組列表
$ n98-magerun.phar dev:module:dependencies:from [-a | --all] [--format[ = " ... " ]] moduleName
按類型列出所有已註冊的觀察者。
$ n98-magerun.phar dev:module:observer:list [type]
類型是“adminhtml”、“global”、“frontend”之一。
列出所有前端主題
$ n98-magerun.phar dev:theme:list [--format[ = " ... " ]]
尋找兩個主題之間的重複檔案(範本、佈局、區域設定等)。
$ n98-magerun.phar dev:theme:duplicates [--log-junit = " ... " ] theme [originalTheme]
例子:
$ n98-magerun.phar dev:theme:duplicates default/default
$ n98-magerun.phar category:create:dummy
使用所有預設的 vanilla magento 或您的自訂值建立虛擬類別。
交互模式或透過shell 參數或混合模式。
論點 | 描述 | 可接受的值 |
商店 ID | 建立類別的商店 ID(預設:1) | 只能是整數 |
類別號 | 要建立的類別數(預設值:1) | 只能是整數 |
兒童類別編號 | 創建的每個類別的子項數量(預設值:0 - 使用“-1”表示從 0 到 5 的隨機數) | 僅整數或 -1(表示 0 到 5 之間的隨機數) |
類別名稱前綴 | 類別名稱前綴(預設值:“My Awesome Category”) | 任何 |
$ n98-magerun.phar eav:attribute:create-dummy-values
建立虛擬屬性值(僅適用於下拉屬性)
交互模式或透過shell 參數或混合模式。
論點 | 描述 | 可接受的值 |
語言環境 | ISO 標準中的區域設定值,如 en_US | 僅有字串 |
屬性ID | 要新增值的屬性 ID | 只能是整數 |
值類型 | 要建立的值的類型(預設 int) | int`<br />`字串`<br />`顏色`<br />`尺寸`<br />`設計師 |
值-數字 | 要建立的值的數量(預設 1) | 只能是整數 |
透過可選搜尋字串列出並查找連接擴展:
$ n98-magerun.phar extension:list [--format[ = " ... " ]] < search >
透過包密鑰安裝連接擴充:
$ n98-magerun.phar extension:install < package_key >
如果找不到該包,則會搜尋替代品。如果可以找到替代方案,您可以選擇要安裝的軟體包。
透過包密鑰下載連接擴充:
$ n98-magerun.phar extension:download < search >
透過包密鑰升級連接擴充:
$ n98-magerun.phar extension:upgrade < search >
從版本 1.1.0 開始,我們提供了一個 Magento 安裝程序,它執行以下操作:
互動式安裝程式:
$ n98-magerun.phar install
無人安裝:
$ n98-magerun.phar install [--magentoVersion[ = " ... " ]] [--magentoVersionByName[ = " ... " ]] [--installationFolder[ = " ... " ]] [--dbHost[ = " ... " ]] [--dbUser[ = " ... " ]] [--dbPass[ = " ... " ]] [--dbName[ = " ... " ]] [--installSampleData[ = " ... " ]] [--useDefaultConfigParams[ = " ... " ]] [--baseUrl[ = " ... " ]] [--replaceHtaccessFile[ = " ... " ]]
無人值守的 Magento CE 1.7.0.2 安裝範例:
$ n98-magerun.phar install --dbHost= " localhost " --dbUser= " mydbuser " --dbPass= " mysecret " --dbName= " magentodb " --installSampleData=yes --useDefaultConfigParams=yes --magentoVersionByName= " magento-ce-1.7.0.2 " --installationFolder= " magento " --baseUrl= " http://magento.localdomain/ "
此外,使用 --noDownload 選項,您可以安裝已儲存在給定資料庫上 --installationFolder 中的 Magento 工作副本。
查看實際效果:http://youtu.be/WU-CbJ86eQc
卸載 Magento:刪除資料庫並遞歸刪除安裝資料夾。
$ n98-magerun.phar uninstall [-f | --force] [--installationFolder[ = " ... " ]]
請小心:這會刪除您安裝中的所有資料。
--installationFolder 是必要的,如果您不輸入,系統將提示您輸入。這應該是您的專案根目錄,而不是 Magento 根目錄。例如,如果您的專案根目錄是 /var/www/site 並且 Magento src 位於 /var/www/site/htdocs,您應該將 /var/www/site 傳遞給命令,或者如果您目前位於該特定位置目錄你可以只傳遞“.”例如:
$ cd /var/www/site
$ n98-magerun.phar uninstall --installationFolder " . " -f
如果省略 -f,系統會提示您確認。
如果您需要自動完成所有 n98-magerun 命令,您可以從「shell 命令」開始。
$ n98-magerun.phar shell
從腳本檔案運行多個命令。
$ n98-magerun.phar script [-d | --define[ = " ... " ]] [--stop-on-error] [filename]
例子:
# 設定多個配置 設定:設定“web/cookie/cookie_domain”example.com # 使用“n”設定多行值 config:set "general/store_information/address" "第一行n第二行n第三行" # 這是一則評論 快取:刷新
您可以選擇使用 unix 管道。
$ echo " cache:flush " | n98-magerun-dev script
$ n98-magerun.phar script < filename
甚至可以建立可執行腳本:
建立檔案 test.magerun 並使其可執行(chmod +x test.magerun):
#! /usr/bin/env n98-magerun.phar script
config:set " web/cookie/cookie_domain " example.com
cache:flush
# Run a shell script with "!" as first char
! ls -l
# Register your own variable (only key = value currently supported)
${my.var} =bar
# Let magerun ask for variable value - add a question mark
${my.var} = ?
! echo ${my.var}
# Use resolved variables from n98-magerun in shell commands
! ls -l ${magento.root} /code/local
預定義變數:
可以使用“--define (-d)”選項將變數傳遞給腳本。
例子:
$ n98-magerun.phar script -d foo=bar filename
# This will register the variable ${foo} with value bar.
可以透過傳遞多個選項來定義多個值。
您可以在儲存庫中組織腳本。只需將腳本放入資料夾/usr/local/share/n98-magerun/scripts或資料夾<HOME>/.n98-magerun/scripts中的主目錄中。
腳本必須具有檔案副檔名.magerun 。
之後,您可以使用script:repo:list命令列出所有腳本。腳本的第一行可以包含註解(以 # 為前綴的行),該註解將顯示為說明。
$ n98-magerun.phar script:repo:list [--format[ = " ... " ]]
如果您想從儲存庫執行腳本,可以透過script:repo:run命令來完成。
$ n98-magerun.phar script:repo:run [-d | --define[ = " ... " ]] [--stop-on-error] [script]
腳本參數是可選的。如果您未指定任何一項,則可以從清單中選擇一項。
https://github.com/netz98/n98-magerun/wiki/Add-custom-commands
建立 yaml 設定檔~/.n98-magerun.yaml 。現在您可以定義覆蓋。原始設定檔是源根資料夾中的config.yaml 。
更改ie預設貨幣和管理員用戶:
commands :
N98MagentoCommandInstallerInstallCommand :
installation :
defaults :
currency : USD
admin_username : myadmin
admin_firstname : Firstname
admin_lastname : Lastname
admin_password : mydefaultSecret
admin_email : [email protected]
建立 yaml 設定檔~/.n98-magerun.yaml 。現在您可以定義覆蓋。原始設定檔是源根資料夾中的config.yaml 。
新增您的儲存庫。設定檔中的鍵遵循 Composer 套件結構。
例子:
命令: N98MagentoCommandInstallerInstallCommand: magento 軟體包: -名稱:我的magento-git儲存庫 版本:1.xxx 來源: 網址:git://myserver/myrepo.git 類型:git 參考:1.xxx 額外的: 樣本資料:樣本資料-1.6.1.0 - 名稱:我的-zipped-magento 版本:1.7.0.0 距離: 網址:http://www.myserver.example.com/magento-1.7.0.0.tar.gz 類型:焦油 額外的: 樣本資料:樣本資料-1.6.1.0