n98 magerun cli 工具提供了一些方便的工具来从命令行使用 Magento。
最新版本 | |
发展科 |
开发是在开发分支中完成的。
该软件仅与 Magento 1 一起运行。
如果您使用 Magento 2,请使用另一个稳定版本 (https://github.com/netz98/n98-magerun2)。
这些工具将自动针对多个 PHP 版本进行测试。它目前在各种 Linux 发行版和 Mac OS X 中运行。不完全支持 Microsoft Windows(不包括某些命令,如 db:dump 或 install)。
我们针对此版本测试该工具:
安装工具有以下三种方式:
从文件服务器下载最新稳定的 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