{"id":267,"date":"2006-02-10T18:22:00","date_gmt":"2006-02-10T18:22:00","guid":{"rendered":"http:\/\/markwilson.me.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm"},"modified":"2007-03-16T09:19:15","modified_gmt":"2007-03-16T09:19:15","slug":"microsofts-next-generation-command","status":"publish","type":"post","link":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm","title":{"rendered":"Microsoft&#8217;s next generation command shell"},"content":{"rendered":"<p><!--113958974367571138-->Back in June 2004, I got in a panic because <a href=\"https:\/\/www.markwilson.co.uk\/blog\/2004\/06\/microsoft-to-withdraw-support-for.htm\">I heard that VBScript was about to be phased out<\/a>.  <a href=\"http:\/\/www.scriptinganswers.com\/\">Don Jones<\/a> commented that <a href=\"http:\/\/en.wikipedia.org\/wiki\/Vbscript\">VBScript<\/a> will still be there in Windows, it just won&#8217;t be developed any further, then later I heard about the new <a href=\"https:\/\/www.markwilson.co.uk\/blog\/2004\/07\/microsoft-scripting-host-monad.htm\">Microsoft scripting host (MSH) shell (codenamed Monad)<\/a>.<\/p>\n<p>At yesterday&#8217;s <a href=\"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/it-forum-05-highlights-part-2.htm\">IT Forum &#8217;05 highlights (part 2)<\/a> event, <a href=\"http:\/\/tfl09.blogspot.com\/\">Thomas Lee<\/a> gave a preview of Monad. Although I am enrolled on the Microsoft command shell beta program, pressures of work and family life have left very little time to do anything with it up to now, but having seen Thomas&#8217; demo, I&#8217;ve installed MSH beta 3 on my day-to-day notebook computer and will try to use it instead of cmd.exe, regedit.exe and some of my other everyday tools.<\/p>\n<p>Those of us who have worked with Windows since&#8230; well since MS-DOS&#8230; will remember the command prompt, as will those who use other operating systems. Graphical user interfaces (GUIs) are all very well (and a well designed GUI can be remarkably intuitive), but a command line interface (CLI) is my preference. Despite a whole load of new and powerful commands in recent Windows releases (like netsh.exe), Windows still lags behind Unix in many ways when it comes to command line operations and MSH is an attempt to catch up with, and then exceed, the tools provided by other operating systems.<\/p>\n<p>MSH is a next-generation shell that is intended to:<\/p>\n<ul>\n<li>Be as interactive and scriptable as <a href=\"http:\/\/en.wikipedia.org\/wiki\/BASH\">BASH<\/a> or <a href=\"http:\/\/en.wikipedia.org\/wiki\/Ksh\">KSH<\/a>.<\/li>\n<li>Be as programmatic as <a href=\"http:\/\/en.wikipedia.org\/wiki\/Perl\">Perl<\/a> or <a href=\"http:\/\/en.wikipedia.org\/wiki\/Ruby_programming_language\">Ruby<\/a>.<\/li>\n<li>Be as production-oriented as <a href=\"http:\/\/en.wikipedia.org\/wiki\/CL_%28OS\/400_command_interpreter%29\">AS\/400 CL<\/a> or <a href=\"http:\/\/en.wikipedia.org\/wiki\/DIGITAL_Command_Language\">VMS DCL<\/a>.<\/li>\n<li>Allow access to data stores as easily as accessing file systems.<\/li>\n<\/ul>\n<p>It sounds like a tall order but amazingly, Microsoft seem to have cracked it. MSH is also pretty easy to use and, it&#8217;s secure by default, avoiding many of the issues associated with VBScript. So secure, in fact, that before running MSH you may wish to execute the following registry change:<\/p>\n<p><code>Windows Registry Editor Version 5.00<\/code><\/p>\n<p><code>[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\MSH\\1\\ShellIds\\Microsoft.Management.Automation.msh]<br \/>\n\"Path\"=\"C:\\\\Program Files\\\\Microsoft Command Shell\\\\v1.0\\\\msh.exe\"<br \/>\n\"ExecutionPolicy\"=\"Unrestricted\"<\/code><\/p>\n<p>(There&#8217;s more on MSH security below).<\/p>\n<p>MSH is instantly recognisable.  If I was to type <code>cmd<\/code>, I would be greeted with something similar to the following:<\/p>\n<p><em>Microsoft Windows XP [Version 5.1.2600]<br \/>\n(C) Copyright 1985-2001 Microsoft Corp.<\/em><\/p>\n<p><em>C:\\&gt;<\/em><\/p>\n<p>If I type <code>msh<\/code> instead, everything is very familiar:<\/p>\n<p><em>Microsoft Command Shell<br \/>\nCopyright (C) 2005 Microsoft Corporation. All rights reserved.<\/em><\/p>\n<p><em>MSH C:\\&gt;<\/em><\/p>\n<p>Type <code>dir<\/code> and guess what happens?  For that matter, type <code>ls<\/code>!  If you want to see the contents of a file then either <code>type <em>filename<\/em><\/code> or <code>cat <em>filename<\/em><\/code> will work too.  <code>get-history<\/code> returns a list of commands, to re-run, save, or edit.<\/p>\n<p>Whereas Unix (and Unix-like) systems tend to store configuration in text files, Windows configurations are incredibly complex with multiple data stores (the registry, text files, DNS, Active Directory, etc.). These data stores normally fall into one of two categories: hierarchical, highly recursive data structures (file system directories, registry keys, Active Directory organizational units, etc.) or fairly flat structures (e.g. DNS zones and records). MSH makes them all easy to navigate using a system of data providers.<\/p>\n<p>For example, I can type <code>cd hklm:<\/code> followed by <code>dir<\/code> to see all the HKEY_LOCAL_MACHINE keys, navigating the registry as though it were a file system. This simplicity is both elegant and incredibly powerful. There are no AD or DNS providers yet, but the next version of Exchange (codenamed Exchange 12) will include MSH support, treating Exchange databases as just another data store (<code>get-mailbox<\/code>, etc.). Exchange 12 support is not implemented as a data provider, but as a commandlet (cmdlet), because its data structure is not really hierarchical (at least down to the mailbox level) &#8211; the full list of Exchange commands can be found using <code>get-excommand<\/code>.<\/p>\n<p>For example, if I want to see the details of my system, I can use <code>get-wmiobject<\/code> command.  That&#8217;s a bit long to type, so I can actually use <code>get-w<\/code> and then complete the command with the tab key (as can in cmd.exe these days).  <code>get-wmiobject win32_computersystem<\/code> returns the details of my system as an object with attributes, that I can assign to a variable (e.g. <code>$mysystem=get-wmiobject win32_computersystem<\/code>). After that, <code>$mysystem.name<\/code> returns the name of my computer, <code>$mysystem.manufacturer<\/code> returns <code>Fujitsu Siemens<\/code> and <code>$mysystem.model<\/code> returns <code>Lifebook S7010<\/code>. That would have been so much harder to obtain in VBscript. Take it to the next level and you can see how the data can be queried and actions taken according to the results (e.g. <code>if ($mysystem.model -eq \"Lifebook S7010\") {\"Do something\"}<\/code>).<\/p>\n<p>MSH has built in help (e.g. <code>get-wmiobject -?<\/code>) and <code>more<\/code> is no longer an external command so <code>get-wmiobject -? | more<\/code> works too.<\/p>\n<p>Some commands will return an array of objects, for example <code>get-wmiobject -list<\/code>.  That&#8217;s a pretty long and unmanageable list but if I use <code>$wmilist=get-wmiobject -list<\/code>, I can use <code>$wmilist.length<\/code> to see how many objects were returned, <code>$wmilist[<em>objectnumber<\/em><\/code>] to view a single object and of course I can also use <code>$wmilist[<em>objectnumber<\/em>].<em>attributename<\/em><\/code> to refer to a single item.<\/p>\n<p>On a typical Unix system, pipes are used to pass text between commands. Scripts can be used to split strings and extract data (also known as prayer-based parsing, because if the command output is changed, the scripts break). MSH pipes are <a href=\"http:\/\/en.wikipedia.org\/wiki\/.NET_Framework\">.NET<\/a> objects with metadata. That means that a hierarchy of objects can be passed between commands. So, I can also show my WMI array as a table by piping it through format table (<code>ft<\/code>), i.e. <code>$wmilist | ft<\/code> (<code>fl<\/code> is format list).<\/p>\n<p>Having looked at how simple to use, yet powerful, MSH is, let&#8217;s look at some of the product specifications:<\/p>\n<ul>\n<li>MSH is intended to support a number of different administrative levels:<\/li>\n<\/ul>\n<ul>\n<li>Operators &#8211; command line only.<\/li>\n<li>Simple scripters &#8211; simple sequences, untyped variables and functions with unnamed parameters.<\/li>\n<li>Advanced scripters &#8211; typed variables and functions with named parameters.<\/li>\n<li>Sophisticated scripters &#8211; scoped variables, functions with initialised parameters, function cmdlets and scriptblocks.<\/li>\n<\/ul>\n<li>The four administrative levels are supported with different script types:<\/li>\n<ul>\n<li>Text &#8211; .NET interpretations of the traditional Unix scripting model.<\/li>\n<li><a href=\"http:\/\/en.wikipedia.org\/wiki\/Component_Object_Model\">COM<\/a> &#8211; <a href=\"http:\/\/en.wikipedia.org\/wiki\/WSH\">Windows script host<\/a> (WSH)\/VBScript-style scripting.<\/li>\n<li>.NET &#8211; for manipulating any native .NET object.<\/li>\n<li>Commands &#8211; MSH cmdlets emitting objects.<\/li>\n<\/ul>\n<li>These script types are supported with a variety of data types, including .NET, <a href=\"http:\/\/en.wikipedia.org\/wiki\/XML\">XML<\/a>, <a href=\"http:\/\/en.wikipedia.org\/wiki\/Windows_Management_Instrumentation\">WMI<\/a>\/<a href=\"http:\/\/en.wikipedia.org\/wiki\/Active_Directory_Service_Interfaces\">ADSI<\/a> and <a href=\"http:\/\/en.wikipedia.org\/wiki\/ADO\">ADO<\/a>.<\/li>\n<p>MSH is intended to be tremendously customisable and it will eventually allow dispense with the style separation between GUI, CLI and systems programming skills so that even an infrastructure bod like me will be able to issue a GUI command (or use a Win32 program) and see what the MSH equivalent command is, so that I can build my own scripts and run a task repeatedly! Unfortunately this GUI-CLI functionality has been dropped from the first release, but hopefully we&#8217;ll see it in a service pack later.<\/p>\n<p>From a security perspective, MSH is extremely secure, with four operational modes:<\/p>\n<ul>\n<li>Restricted mode allows interactive operations only, with no script execution.<\/li>\n<li>AllSigned mode requires that scripts must be signed by a trusted source.<\/li>\n<li>RemoteSigned mode requires that scripts from the Internet must be signed by a trusted source.<\/li>\n<li>Unrestricted mode will allow any script to run, but will always warn before remote scripts are executed.<\/li>\n<\/ul>\n<p>Other security measures include:<\/p>\n<ul>\n<li>No file association for .msh files.<\/li>\n<li>The current folder (.) is not on the path by default.<\/li>\n<\/ul>\n<p>So when can we get MSH? <a href=\"http:\/\/www.microsoft.com\/downloads\/results.aspx?pocId=&amp;freetext=monad&amp;DisplayLang=en\">Beta 3 is available for download now<\/a> and the final release is expected with Exchange 12. Although MSH will not included with Windows Vista, I&#8217;m told that it does work on a Vista\/Longhorn platform.<\/p>\n<p>Finally, for one more example of how easy Monad can be to use, try this:<\/p>\n<p><code>\"Monad Rocks  \" * 200<\/code><\/p>\n<p><strong>Links<\/strong><br \/>\n<a href=\"http:\/\/www.reskit.net\/monad\/\">Thomas Lee&#8217;s Monad information centre<\/a><br \/>\n<a href=\"http:\/\/channel9.msdn.com\/tags\/monad\">Monad on Channel 9<\/a><br \/>\n<a href=\"http:\/\/blogs.msdn.com\/monad\/\">Monad product team blog<\/a><br \/>\n<a href=\"http:\/\/en.wikipedia.org\/wiki\/MSH_%28shell%29\">MSH on Wikipedia<\/a><br \/>\n<a href=\"http:\/\/groups.google.com\/group\/microsoft.public.windows.server.scripting\">microsoft.public.windows.server.scripting newsgroup<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Back in June 2004, I got in a panic because I heard that VBScript was about to be phased out. Don Jones commented that VBScript will still be there in Windows, it just won&#8217;t be developed any further, then later I heard about the new Microsoft scripting host (MSH) shell (codenamed Monad). At yesterday&#8217;s IT &hellip; <a href=\"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Microsoft&#8217;s next generation command shell<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[],"tags":[33,82],"class_list":["post-267","post","type-post","status-publish","format-standard","hentry","tag-windows","tag-scripting"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Microsoft&#039;s next generation command shell - markwilson.it<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Microsoft&#039;s next generation command shell - markwilson.it\" \/>\n<meta property=\"og:description\" content=\"Back in June 2004, I got in a panic because I heard that VBScript was about to be phased out. Don Jones commented that VBScript will still be there in Windows, it just won&#8217;t be developed any further, then later I heard about the new Microsoft scripting host (MSH) shell (codenamed Monad). At yesterday&#8217;s IT &hellip; Continue reading Microsoft&#8217;s next generation command shell\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm\" \/>\n<meta property=\"og:site_name\" content=\"markwilson.it\" \/>\n<meta property=\"article:published_time\" content=\"2006-02-10T18:22:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2007-03-16T09:19:15+00:00\" \/>\n<meta name=\"author\" content=\"Mark Wilson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@markwilsonit\" \/>\n<meta name=\"twitter:site\" content=\"@markwilsonit\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Mark Wilson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm\"},\"author\":{\"name\":\"Mark Wilson\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/98f61365e7c39d6be942174b8c4de468\"},\"headline\":\"Microsoft&#8217;s next generation command shell\",\"datePublished\":\"2006-02-10T18:22:00+00:00\",\"dateModified\":\"2007-03-16T09:19:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm\"},\"wordCount\":1247,\"commentCount\":5,\"publisher\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/98f61365e7c39d6be942174b8c4de468\"},\"keywords\":[\"Microsoft Windows\",\"Scripting\"],\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm\",\"url\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm\",\"name\":\"Microsoft's next generation command shell - markwilson.it\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#website\"},\"datePublished\":\"2006-02-10T18:22:00+00:00\",\"dateModified\":\"2007-03-16T09:19:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm#breadcrumb\"},\"inLanguage\":\"en-GB\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/2006\\\/02\\\/microsofts-next-generation-command.htm#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Microsoft&#8217;s next generation command shell\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/\",\"name\":\"markwilson.it\",\"description\":\"get-info -class technology | write-output &gt; \\\/dev\\\/web\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/98f61365e7c39d6be942174b8c4de468\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-GB\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/#\\\/schema\\\/person\\\/98f61365e7c39d6be942174b8c4de468\",\"name\":\"Mark Wilson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-GB\",\"@id\":\"https:\\\/\\\/i0.wp.com\\\/www.markwilson.co.uk\\\/blog\\\/uploads\\\/image-4.png?fit=800%2C800&ssl=1\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/www.markwilson.co.uk\\\/blog\\\/uploads\\\/image-4.png?fit=800%2C800&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/www.markwilson.co.uk\\\/blog\\\/uploads\\\/image-4.png?fit=800%2C800&ssl=1\",\"width\":800,\"height\":800,\"caption\":\"Mark Wilson\"},\"logo\":{\"@id\":\"https:\\\/\\\/i0.wp.com\\\/www.markwilson.co.uk\\\/blog\\\/uploads\\\/image-4.png?fit=800%2C800&ssl=1\"},\"description\":\"A Chartered IT Professional, with recent experience in technology leadership, IT strategy and practice management roles, Mark Wilson is an Enterprise Architect in the Advisory and Management Group at risual. During a career spanning more than two decades, Mark has gained widespread recognition as an expert in his field including both industry and national press exposure. In addition to certifications from Microsoft, VMware, Red Hat, The Open Group and Axelos, Mark held a Microsoft Most Valuable Professional (MVP) award for three years and is now part of the MVP Reconnect programme. Mark is also well-known on social media and maintains an award-winning blog.\",\"sameAs\":[\"http:\\\/\\\/www.markwilson.co.uk\\\/\",\"https:\\\/\\\/www.instagram.com\\\/markwilsonuk\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/markawilson\\\/\",\"https:\\\/\\\/x.com\\\/markwilsonit\",\"https:\\\/\\\/www.youtube.com\\\/channel\\\/UCWHlZCoHRTocdvtrOJ2IL4A\"],\"url\":\"https:\\\/\\\/www.markwilson.co.uk\\\/blog\\\/author\\\/mark-wilson\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Microsoft's next generation command shell - markwilson.it","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm","og_locale":"en_GB","og_type":"article","og_title":"Microsoft's next generation command shell - markwilson.it","og_description":"Back in June 2004, I got in a panic because I heard that VBScript was about to be phased out. Don Jones commented that VBScript will still be there in Windows, it just won&#8217;t be developed any further, then later I heard about the new Microsoft scripting host (MSH) shell (codenamed Monad). At yesterday&#8217;s IT &hellip; Continue reading Microsoft&#8217;s next generation command shell","og_url":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm","og_site_name":"markwilson.it","article_published_time":"2006-02-10T18:22:00+00:00","article_modified_time":"2007-03-16T09:19:15+00:00","author":"Mark Wilson","twitter_card":"summary_large_image","twitter_creator":"@markwilsonit","twitter_site":"@markwilsonit","twitter_misc":{"Written by":"Mark Wilson","Estimated reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm#article","isPartOf":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm"},"author":{"name":"Mark Wilson","@id":"https:\/\/www.markwilson.co.uk\/blog\/#\/schema\/person\/98f61365e7c39d6be942174b8c4de468"},"headline":"Microsoft&#8217;s next generation command shell","datePublished":"2006-02-10T18:22:00+00:00","dateModified":"2007-03-16T09:19:15+00:00","mainEntityOfPage":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm"},"wordCount":1247,"commentCount":5,"publisher":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/#\/schema\/person\/98f61365e7c39d6be942174b8c4de468"},"keywords":["Microsoft Windows","Scripting"],"inLanguage":"en-GB","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm","url":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm","name":"Microsoft's next generation command shell - markwilson.it","isPartOf":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/#website"},"datePublished":"2006-02-10T18:22:00+00:00","dateModified":"2007-03-16T09:19:15+00:00","breadcrumb":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.markwilson.co.uk\/blog\/2006\/02\/microsofts-next-generation-command.htm#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.markwilson.co.uk\/blog"},{"@type":"ListItem","position":2,"name":"Microsoft&#8217;s next generation command shell"}]},{"@type":"WebSite","@id":"https:\/\/www.markwilson.co.uk\/blog\/#website","url":"https:\/\/www.markwilson.co.uk\/blog\/","name":"markwilson.it","description":"get-info -class technology | write-output &gt; \/dev\/web","publisher":{"@id":"https:\/\/www.markwilson.co.uk\/blog\/#\/schema\/person\/98f61365e7c39d6be942174b8c4de468"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.markwilson.co.uk\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":["Person","Organization"],"@id":"https:\/\/www.markwilson.co.uk\/blog\/#\/schema\/person\/98f61365e7c39d6be942174b8c4de468","name":"Mark Wilson","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/uploads\/image-4.png?fit=800%2C800&ssl=1","url":"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/uploads\/image-4.png?fit=800%2C800&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/uploads\/image-4.png?fit=800%2C800&ssl=1","width":800,"height":800,"caption":"Mark Wilson"},"logo":{"@id":"https:\/\/i0.wp.com\/www.markwilson.co.uk\/blog\/uploads\/image-4.png?fit=800%2C800&ssl=1"},"description":"A Chartered IT Professional, with recent experience in technology leadership, IT strategy and practice management roles, Mark Wilson is an Enterprise Architect in the Advisory and Management Group at risual. During a career spanning more than two decades, Mark has gained widespread recognition as an expert in his field including both industry and national press exposure. In addition to certifications from Microsoft, VMware, Red Hat, The Open Group and Axelos, Mark held a Microsoft Most Valuable Professional (MVP) award for three years and is now part of the MVP Reconnect programme. Mark is also well-known on social media and maintains an award-winning blog.","sameAs":["http:\/\/www.markwilson.co.uk\/","https:\/\/www.instagram.com\/markwilsonuk\/","https:\/\/www.linkedin.com\/in\/markawilson\/","https:\/\/x.com\/markwilsonit","https:\/\/www.youtube.com\/channel\/UCWHlZCoHRTocdvtrOJ2IL4A"],"url":"https:\/\/www.markwilson.co.uk\/blog\/author\/mark-wilson"}]}},"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":426,"url":"https:\/\/www.markwilson.co.uk\/blog\/2004\/07\/microsoft-scripting-host-monad.htm","url_meta":{"origin":267,"position":0},"title":"Microsoft Scripting Host (Monad)","author":"Mark Wilson","date":"Tuesday 6 July 2004","format":false,"excerpt":"A few weeks back I published a post about Microsoft's plans to withdraw support for VBscript. One of my clients tipped me off a couple of days back with some more information about the new Microsoft Scripting Host (MSH) shell - codenamed Monad, which will be included in the Windows\u2026","rel":"","context":"In \"Microsoft Windows\"","block_context":{"text":"Microsoft Windows","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/windows"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":428,"url":"https:\/\/www.markwilson.co.uk\/blog\/2006\/05\/introducing-windows-powershell.htm","url_meta":{"origin":267,"position":1},"title":"Introducing Windows PowerShell","author":"Mark Wilson","date":"Wednesday 3 May 2006","format":false,"excerpt":"I missed this news last week, but it seems that Microsoft has finally named their next-generation command shell (formerly codenamed Monad). I liked Microsoft Script Host (MSH) or Microsoft command shell. They were accurate descriptions of what it does. Unfortunately we seem to be stuck with the name Windows PowerShell.\u2026","rel":"","context":"In \"Microsoft Windows\"","block_context":{"text":"Microsoft Windows","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/windows"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":396,"url":"https:\/\/www.markwilson.co.uk\/blog\/2004\/06\/microsoft-to-withdraw-support-for.htm","url_meta":{"origin":267,"position":2},"title":"Microsoft to withdraw support for VBscript","author":"Mark Wilson","date":"Tuesday 8 June 2004","format":false,"excerpt":"OK, we've all heard of Microsoft trying to withdraw support for a product (NT 4.0 anybody?), but at a recent partner event they stated that support for VBscript is to be phased out. Apparently there is a replacement product codenamed Monad, which will allow the scripting of console applications. When\u2026","rel":"","context":"In \"Microsoft Windows\"","block_context":{"text":"Microsoft Windows","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/windows"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":194,"url":"https:\/\/www.markwilson.co.uk\/blog\/2005\/11\/windows-management-technologies.htm","url_meta":{"origin":267,"position":3},"title":"Windows management technologies","author":"Mark Wilson","date":"Thursday 3 November 2005","format":false,"excerpt":"At the Best of the Microsoft Management Summit 2005 event a few weeks back, Vlad Joanavic gave an overview of some of the \"free\" Windows Management technologies that are available (in addition to the \"paid\" products under the System Center brand). These basically break down into: Windows Software Update Services\u2026","rel":"","context":"In \"Microsoft Active Directory\"","block_context":{"text":"Microsoft Active Directory","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/active-directory"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":797,"url":"https:\/\/www.markwilson.co.uk\/blog\/2007\/05\/windows-powershell-for-it-administrators.htm","url_meta":{"origin":267,"position":4},"title":"Windows PowerShell for IT administrators","author":"Mark Wilson","date":"Wednesday 23 May 2007","format":false,"excerpt":"\"Go away or I will replace you with a very small shell script\" [T-shirt slogan from an attendee at tonight's Windows PowerShell for IT administrators event.] I'm back in my hotel room having spent the evening at one of Microsoft UK's TechNet events and this time the topic was Windows\u2026","rel":"","context":"In \"Microsoft Windows\"","block_context":{"text":"Microsoft Windows","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/windows"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1386,"url":"https:\/\/www.markwilson.co.uk\/blog\/2009\/03\/microsoft-powershell-vbscript-and-jscript-bible.htm","url_meta":{"origin":267,"position":5},"title":"Microsoft PowerShell, VBScript and JScript Bible","author":"Mark Wilson","date":"Thursday 12 March 2009","format":false,"excerpt":"At last night's joint user group meeting for the Windows Server UK User Group and the Active Directory UK User Group, James O'Neill mentioned that the book he has co-authored (Microsoft PowerShell, VBScript and JScript Bible, published by John Wiley and sons) goes on sale today. I haven't had the\u2026","rel":"","context":"In \"Scripting\"","block_context":{"text":"Scripting","link":"https:\/\/www.markwilson.co.uk\/blog\/tag\/scripting"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/posts\/267","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/comments?post=267"}],"version-history":[{"count":0,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/posts\/267\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/media?parent=267"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/categories?post=267"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.markwilson.co.uk\/blog\/wp-json\/wp\/v2\/tags?post=267"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}