{"id":27421,"date":"2017-03-17T11:39:06","date_gmt":"2017-03-17T09:39:06","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=27421"},"modified":"2017-03-17T11:39:06","modified_gmt":"2017-03-17T09:39:06","slug":"cakephp-3-remove-shell-welcome-header","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/","title":{"rendered":"CakePHP 3 : Remove Shell Welcome Header"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>CakePHP 3\u00a0has an excellent support for command line <a href=\"https:\/\/book.cakephp.org\/3.0\/en\/console-and-shells.html\">Shells, Tasks, and Console Tools<\/a>. \u00a0There are a few that are bundled with the framework itself, and that come from a variety of plugins. \u00a0And, of course, you can have your own commands, specific to your application.<\/p>\n<pre class=\"brush: plain; light: true; title: ; notranslate\" title=\"\">\r\n$ .\/bin\/cake\r\n\r\nWelcome to CakePHP v3.4.3 Console\r\n---------------------------------------------------------------\r\nApp : src\r\nPath: \/home\/leonid\/Work\/cakephp_test\/src\/\r\nPHP : 7.0.16\r\n---------------------------------------------------------------\r\nCurrent Paths:\r\n\r\n* app:  src\r\n* root: \/home\/leonid\/Work\/cakephp_test\r\n* core: \/home\/leonid\/Work\/cakephp_test\/vendor\/cakephp\/cakephp\r\n\r\nAvailable Shells:\r\n\r\n&#x5B;Bake] bake\r\n\r\n&#x5B;DebugKit] benchmark, whitespace\r\n\r\n&#x5B;Migrations] migrations\r\n\r\n&#x5B;CORE] cache, i18n, orm_cache, plugin, routes, server\r\n\r\n&#x5B;app] console\r\n\r\nTo run an app or core command, type `cake shell_name &#x5B;args]`\r\nTo run a plugin command, type `cake Plugin.shell_name &#x5B;args]`\r\nTo get help on a specific command, type `cake shell_name --help`\r\n<\/pre>\n<p>There is one tiny little annoyance though. \u00a0Sometimes, it&#8217;s useful to get an output of the CakePHP Shell and use it in another script. \u00a0For example, you might need to get a list of all loaded plugins and loop over them, performing another action, outside of CakePHP. \u00a0Say, in a bash script. \u00a0Getting a list of loaded plugins is easy with the bundled shell like so:<\/p>\n<pre class=\"brush: plain; light: true; title: ; notranslate\" title=\"\">\r\n$ .\/bin\/cake plugin loaded\r\n\r\nWelcome to CakePHP v3.4.3 Console\r\n---------------------------------------------------------------\r\nApp : src\r\nPath: \/home\/leonid\/Work\/cakephp_test\/src\/\r\nPHP : 7.0.16\r\n---------------------------------------------------------------\r\nBake\r\nDebugKit\r\nMigrations\r\n<\/pre>\n<p>But, as you can see, the output is not very useful for machine processing. The welcome header is in the way. \u00a0Sure, you can parse it out with regular expressions, or even a simple line count. \u00a0But that lacks elegance. \u00a0Is there a better way? \u00a0I thought there was.<\/p>\n<p>My first approach was to use the &#8211;quiet option, which, I thought, would leave me with just the needed output. \u00a0It turns out, that&#8217;s not what it does. \u00a0It strips out all the output, and there is no list of plugins at all.<\/p>\n<p>The second approach worked out better. \u00a0I learned about it from <a href=\"https:\/\/groups.google.com\/forum\/#!topic\/cake-php\/UHtGfJyYx-M\">this thread<\/a>. \u00a0The solution is to extend the needed CakePHP shell and overwrite the protected <em>_welcome()<\/em> method. \u00a0Here&#8217;s the content of the newly created application level shell in <em>src\/Shell\/PluginShell.php<\/em>:<\/p>\n<pre class=\"brush: php; title: ; notranslate\" title=\"\">\r\n&lt;?php\r\nnamespace App\\Shell;\r\n\r\nuse Cake\\Shell\\PluginShell as Shell;\r\n\r\nclass PluginShell extends Shell\r\n{\r\n    \/**\r\n     * Silence the welcome message\r\n     *\r\n     * @return void\r\n     *\/\r\n    protected function _welcome()\r\n    {\r\n    }\r\n}\r\n<\/pre>\n<p>And now running the same command as before produces a cleaner output:<\/p>\n<pre class=\"brush: plain; light: true; title: ; notranslate\" title=\"\">\r\n$ .\/bin\/cake plugin loaded\r\nBake\r\nDebugKit\r\nMigrations\r\n<\/pre>\n<p>This now can be easily used in other scripts without any need for regular expressions and other trimming techniques.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>CakePHP 3\u00a0has an excellent support for command line Shells, Tasks, and Console Tools. \u00a0There are a few that are bundled with the framework itself, and that come from a variety of plugins. \u00a0And, of course, you can have your own commands, specific to your application. $ .\/bin\/cake Welcome to CakePHP v3.4.3 Console &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; App : &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">CakePHP 3 : Remove Shell Welcome Header<\/span><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"CakePHP 3 : Remove Shell Welcome Header #CakePHP #WebDev #PHP #CLI","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,18,62,1334],"tags":[1537,1960,38,1330],"keyring_services":[],"class_list":["post-27421","post","type-post","status-publish","format-standard","hentry","category-general","category-programming","category-technology","category-web-work","tag-cakephp","tag-command-line","tag-php","tag-web-development"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"CakePHP 3 has an excellent support for command line Shells, Tasks, and Console Tools. There are a few that are bundled with the framework itself, and that come from a variety of plugins. And, of course, you can have your own commands, specific to your application. [code light=&quot;true&quot;] $ .\/bin\/cake Welcome to CakePHP v3.4.3 Console ---------------------------------------------------------------\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"CakePHP 3 has an excellent support for command line Shells, Tasks, and Console Tools. There are a few that are bundled with the framework itself, and that come from a variety of plugins. And, of course, you can have your own commands, specific to your application. [code light=&quot;true&quot;] $ .\/bin\/cake Welcome to CakePHP v3.4.3 Console ---------------------------------------------------------------\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2017-03-17T09:39:06+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2017-03-17T09:39:06+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"CakePHP 3 has an excellent support for command line Shells, Tasks, and Console Tools. There are a few that are bundled with the framework itself, and that come from a variety of plugins. And, of course, you can have your own commands, specific to your application. [code light=&quot;true&quot;] $ .\/bin\/cake Welcome to CakePHP v3.4.3 Console ---------------------------------------------------------------\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#blogposting\",\"name\":\"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov\",\"headline\":\"CakePHP 3 : Remove Shell Welcome Header\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#articleImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"},\"datePublished\":\"2017-03-17T11:39:06+02:00\",\"dateModified\":\"2017-03-17T11:39:06+02:00\",\"inLanguage\":\"en-US\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#webpage\"},\"articleSection\":\"All, Programming, Technology, Web work, CakePHP, command line, PHP, web development\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"position\":3,\"name\":\"Programming\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#listItem\",\"name\":\"CakePHP 3 : Remove Shell Welcome Header\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#listItem\",\"position\":4,\"name\":\"CakePHP 3 : Remove Shell Welcome Header\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/\",\"name\":\"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov\",\"description\":\"CakePHP 3 has an excellent support for command line Shells, Tasks, and Console Tools. There are a few that are bundled with the framework itself, and that come from a variety of plugins. And, of course, you can have your own commands, specific to your application. [code light=\\\"true\\\"] $ .\\\/bin\\\/cake Welcome to CakePHP v3.4.3 Console ---------------------------------------------------------------\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2017\\\/03\\\/17\\\/cakephp-3-remove-shell-welcome-header\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2017-03-17T11:39:06+02:00\",\"dateModified\":\"2017-03-17T11:39:06+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov","description":"CakePHP 3 has an excellent support for command line Shells, Tasks, and Console Tools. There are a few that are bundled with the framework itself, and that come from a variety of plugins. And, of course, you can have your own commands, specific to your application. [code light=\"true\"] $ .\/bin\/cake Welcome to CakePHP v3.4.3 Console ---------------------------------------------------------------","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#blogposting","name":"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov","headline":"CakePHP 3 : Remove Shell Welcome Header","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#articleImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"},"datePublished":"2017-03-17T11:39:06+02:00","dateModified":"2017-03-17T11:39:06+02:00","inLanguage":"en-US","mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#webpage"},"articleSection":"All, Programming, Technology, Web work, CakePHP, command line, PHP, web development"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","position":3,"name":"Programming","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#listItem","name":"CakePHP 3 : Remove Shell Welcome Header"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#listItem","position":4,"name":"CakePHP 3 : Remove Shell Welcome Header","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/","name":"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov","description":"CakePHP 3 has an excellent support for command line Shells, Tasks, and Console Tools. There are a few that are bundled with the framework itself, and that come from a variety of plugins. And, of course, you can have your own commands, specific to your application. [code light=\"true\"] $ .\/bin\/cake Welcome to CakePHP v3.4.3 Console ---------------------------------------------------------------","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2017-03-17T11:39:06+02:00","dateModified":"2017-03-17T11:39:06+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov","og:description":"CakePHP 3 has an excellent support for command line Shells, Tasks, and Console Tools. There are a few that are bundled with the framework itself, and that come from a variety of plugins. And, of course, you can have your own commands, specific to your application. [code light=&quot;true&quot;] $ .\/bin\/cake Welcome to CakePHP v3.4.3 Console ---------------------------------------------------------------","og:url":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2017-03-17T09:39:06+00:00","article:modified_time":"2017-03-17T09:39:06+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"CakePHP 3 : Remove Shell Welcome Header - Leonid Mamchenkov","twitter:description":"CakePHP 3 has an excellent support for command line Shells, Tasks, and Console Tools. There are a few that are bundled with the framework itself, and that come from a variety of plugins. And, of course, you can have your own commands, specific to your application. [code light=&quot;true&quot;] $ .\/bin\/cake Welcome to CakePHP v3.4.3 Console ---------------------------------------------------------------","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"27421","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-19 09:47:07","updated":"2026-01-15 12:47:44","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/\" title=\"Programming\">Programming<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tCakePHP 3 : Remove Shell Welcome Header\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"Technology","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/"},{"label":"Programming","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/"},{"label":"CakePHP 3 : Remove Shell Welcome Header","link":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/17\/cakephp-3-remove-shell-welcome-header\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":27717,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/06\/22\/phinx-joins-cakephp\/","url_meta":{"origin":27421,"position":0},"title":"Phinx joins CakePHP!","author":"Leonid Mamchenkov","date":"June 22, 2017","format":false,"excerpt":"These are some really good news - Phinx joins CakePHP family! \u00a0If you are from a different technology stack and not familiar with these, Phinx is an excellent database migrations tool, which has been used by CakePHP framework for a while now. \u00a0The two worked great together. \u00a0Now that they\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":24276,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/06\/02\/claim-to-fame-phinx-longblob\/","url_meta":{"origin":27421,"position":1},"title":"Claim to fame : phinx LONGBLOB","author":"Leonid Mamchenkov","date":"June 2, 2015","format":false,"excerpt":"My largest claim to fame in the Open Source software just got merged in - a pull request to the phinx project, adding support for MySQL's LONGBLOB (as well as TINYBLOB and MEDIUMBLOB). \u00a0Phinx is the PHP tool for database migrations. \u00a0It's used, among others, by the CakePHP 3 framework.\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":15740,"url":"https:\/\/mamchenkov.net\/wordpress\/2011\/10\/18\/cakephp-2-0-released\/","url_meta":{"origin":27421,"position":2},"title":"CakePHP 2.0 released!","author":"Leonid Mamchenkov","date":"October 18, 2011","format":false,"excerpt":"I've been a bit all over the place these last few days, but I knew that this was coming shortly - CakePHP team released the new and much improved version 2.0 a couple of days ago. There are a lot of changes. And I do mean a lot. Here are\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":27405,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/03\/10\/using-requirejs-with-cakephp\/","url_meta":{"origin":27421,"position":3},"title":"Using RequireJS with CakePHP","author":"Leonid Mamchenkov","date":"March 10, 2017","format":false,"excerpt":"https:\/\/www.slideshare.net\/StephenYoung6\/require-js-cakephp","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":24147,"url":"https:\/\/mamchenkov.net\/wordpress\/2015\/05\/20\/cakephp-3-orm\/","url_meta":{"origin":27421,"position":4},"title":"CakePHP 3 ORM","author":"Leonid Mamchenkov","date":"May 20, 2015","format":"status","excerpt":"https:\/\/twitter.com\/cakephp\/status\/600970761004851200","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":16391,"url":"https:\/\/mamchenkov.net\/wordpress\/2012\/07\/09\/cakephp-2-1-4-2-2-and-a-pick-into-3-0\/","url_meta":{"origin":27421,"position":5},"title":"CakePHP 2.1.4, 2.2, and a pick into 3.0","author":"Leonid Mamchenkov","date":"July 9, 2012","format":false,"excerpt":"There's been a stream of good news from the CakePHP headquarters recently. \u00a0If you are as slow as me on catching up with these things, here is a quick summary. CakePHP 2.1.4 has been release, and that'll be the last release for the 2.1 branch. \u00a0It's time to move on.\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/27421","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=27421"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/27421\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=27421"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=27421"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=27421"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=27421"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}