我有一个从cron运行的artisan命令:
php artisan telescope:prune
字符串
这个命令(像许多artisan命令一样)产生输出。这对于交互式使用来说很好,但是当我从cron运行这样的命令时,我更喜欢遵循cron约定,除非有错误,否则不产生任何输出。
许多命令都支持--quiet
选项,或者需要混乱的>/dev/null
重定向来降低噪音。我看过Laravel artisan文档,但我找不到控制此类命令输出的方法。当从Laravel内部调用artisan命令时,可以通过callSilently()
方法调用它来抑制输出,但这在命令行上不可用,就我所知
如何在命令行上抑制artisan命令的输出?
1条答案
按热度按时间qnzebej01#
事实证明,这是可能的,只是没有记录在案。
Artisan命令实现InteractsWithIO接口,该接口将输出详细控制定义为 * 每个 * artisan命令的命令行选项。选项包括:
v
:详细vv
:非常冗长vvv
:quiet
:安静normal
:正常Artisan命令可以通过各种通道(如
info
、line
、comment
、question
、error
,有关详细信息,请参阅interface类)生成输出,这些通道的作用与日志级别非常相似,允许根据详细程度选项对它们进行过滤。因此,为了直接回答我的问题,可以通过附加
--quiet
选项来抑制此命令的输出:字符串