{"id":16121,"date":"2010-12-24T00:01:00","date_gmt":"2010-12-24T00:01:00","guid":{"rendered":"https:\/\/blogs.technet.microsoft.com\/heyscriptingguy\/2010\/12\/24\/a-windows-powershell-carol-ebenezer-script-sees-the-future\/"},"modified":"2010-12-24T00:01:00","modified_gmt":"2010-12-24T00:01:00","slug":"a-windows-powershell-carol-ebenezer-script-sees-the-future","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/scripting\/a-windows-powershell-carol-ebenezer-script-sees-the-future\/","title":{"rendered":"A Windows PowerShell Carol: Ebenezer Script Sees the Future"},"content":{"rendered":"<p><span style=\"font-size:10.0pt\"><\/span>\n<span style=\"font-size:10.0pt\">&nbsp;<\/span>\n<span style=\"font-size:10.0pt\"><strong>Summary:<\/strong> A Windows PowerShell Carol in which Ebenezer Script sees the future of scripting.<\/span><span style=\"font-size:10.0pt\">&nbsp;<\/span>\n<span style=\"font-size:10.0pt\"><\/span>\n<span style=\"font-size:10.0pt\">&nbsp;<\/span>\n<span style=\"font-size:10.0pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><img decoding=\"async\" height=\"34\" width=\"34\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/29\/2019\/02\/q-for-powertip.jpg\" align=\"left\" alt=\"Hey, Scripting Guy! Question\" border=\"0\" title=\"Hey, Scripting Guy! Question\"><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span>Hey, Scripting Guy! Is it really possible to see the future with Windows PowerShell?<\/p>\n<p>&#8212; SK<\/span><span style=\"font-size:10.0pt\">&nbsp;<\/span>\n<span style=\"font-size:10.0pt\"><\/span>\n<span style=\"font-size:10.0pt\">&nbsp;<\/span>\n<span style=\"font-size:10.0pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><span style=\"font-size: 10pt\"><img decoding=\"async\" height=\"34\" width=\"34\" src=\"https:\/\/devblogs.microsoft.com\/wp-content\/uploads\/sites\/29\/2019\/02\/a-for-powertip.jpg\" align=\"left\" alt=\"Hey, Scripting Guy! Answer\" border=\"0\" title=\"Hey, Scripting Guy! Answer\"><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span><\/span>Hello SK, Microsoft Scripting Guy Ed Wilson here. It is almost the end of the year and we have decided to devote some posts to the holiday season. We even have guest bloggers from around the world to share some holiday spirit. This week we have Sean Kearney. You can learn more about Sean in <a href=\"http:\/\/blogs.technet.com\/b\/heyscriptingguy\/archive\/2010\/12\/19\/weekend-scripter-holiday-powershell-carol-part-one.aspx\">Monday&rsquo;s blog introduction<\/a>. Be sure to check out <a href=\"https:\/\/www.youtube.com\/watch?v=v04BXhlPxyY\">Sean&rsquo;s theme song for this week&rsquo;s PowerShell Carol posts<\/a>.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&nbsp;<\/span>\n<span style=\"font-size:10.0pt\">&nbsp;<\/span>\n<span style=\"font-size:10.0pt\">Ebenezer looked up. He was back in his bed again. He pulled his covers, an old Partner Gold program flag, about him to keep warm. It did not help. A cold breeze filled the room as it began to glow blue.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">He found himself looking up at the largest console session he had ever seen.<\/span><\/p>\n<div><\/div>\n<p><b><i><span style=\"font-size:10.0pt\">Windows PowerShell<br \/>Copyright (C) 2009 Microsoft Corporation.<span>&nbsp; <\/span>All rights reserved.<\/span><\/i><\/b><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&nbsp;<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">It stared at Ebenezer from eyes made of pure ASCII on a blue background.<span>&nbsp; <\/span><\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">He looked up with both fear and admiration in his eyes. <\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&ldquo;Are you the spirit of scripting Future?&rdquo; he voice shook as he looked up.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">The spirit only flashed a cursor in response with two quick lines.<\/span><\/p>\n<div><\/div>\n<blockquote>\n<p class=\"CodeBlockScreened\">$<span style=\"font-family: courier new,courier\">FUTURE=(GET-DATE).adddays((GET-RANDOM 10000)) <\/span><\/p>\n<p class=\"CodeBlockScreened\"><span style=\"font-family: courier new,courier\">GET-FUTURECONTENT(&ldquo;Video&rdquo;,&rdquo;BobSnipit.wmv&rdquo;)<\/span><\/p>\n<\/blockquote>\n<p><span style=\"font-size: 10pt\"><span style=\"font-family: courier new,courier\">&nbsp;<\/span><\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">Ebenezer looked on at the presented content. Somehow, without knowing how, he was looking into Bob Snipit&rsquo;s future. The place in Canada had a FOR RENT sign on it. The yard was covered in yellow sheets with old bits of script on it and &ldquo;Frowny Faces.&rdquo; The window had a &ldquo;Leafs Rule&rdquo; flag. It was truly a sad sight.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">The video fast-forwarded to a small dark building. In it, all you could see was Bob Snipit, tears flowing. &ldquo;He had such promise! Why did he do that! No more! It&rsquo;s all over!&rdquo; he cried into his cup of Tim Horton&rsquo;s coffee, gnawing on his old laptop, &ldquo;I can&rsquo;t believe he turned down such a dark path! What a wasted life! Ruin!&rdquo;<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&ldquo;Spirit? What is this sight before me? What brings sadness to a man who held such joy?&rdquo;<\/span><\/p>\n<div><\/div>\n<blockquote>\n<p class=\"CodeBlockScreened\">(<span style=\"font-family: courier new,courier\">GET-CHILDITEM C:TinyShim -include *.JPG) | FOREACH { INVOKE-ITEM $_.Name }<\/span><\/p>\n<\/blockquote>\n<p><span style=\"font-size: 10pt\"><span style=\"font-family: courier new,courier\">&nbsp;<\/span><\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">Poor Ebenezer stared helplessly at pictures displaying Tiny Shim watching his father return from work, a little less happy each day. Dragged down by the unhappy attitude Mr. Script thrust upon him, poor Bob began to bring it home. Years later, photos showed Tiny Shim finally deciding upon a route far from his gift; a job still yielding his intelligence, but far, far duller.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">Tiny Shim had turned to&#8230; Chartered Accountancy!<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&ldquo;Spirit! Please tell me this isn&rsquo;t so!&rdquo; whined Ebenezer.<\/span><\/p>\n<div><\/div>\n<blockquote>\n<p class=\"CodeBlockScreened\">S<span style=\"font-family: courier new,courier\">END-ANSWER &ndash;user &lsquo;Ebenezer Script&rsquo; &ndash;response &lsquo;All Your Fault Dummy&rsquo;<\/span><\/p>\n<\/blockquote>\n<p><span style=\"font-size: 10pt\"><span style=\"font-family: courier new,courier\">&nbsp;<\/span><\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">Was the only response he received. It was quiet and chilling.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">A tear fell from Ebenezer. A brilliant coder, young and talented, lost to something without his passion to drive him. He remembered passion. <\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">It was his fault. How could he have been so bitter?<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">Ebenezer watched the Spirit as yet another Cmdlet formed in front of him in a chilling blue.<\/span><\/p>\n<div><\/div>\n<blockquote>\n<p class=\"CodeBlockScreened\">G<span style=\"font-family: courier new,courier\">ET-CONTENT C:ArticleNews-Ebenezer.txt | MORE<\/span><\/p>\n<\/blockquote>\n<p><span style=\"font-size: 10pt\"><span style=\"font-family: courier new,courier\">&nbsp;<\/span><\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">It was the content of emails between two employers, discussing the new hire. They were chuckling amongst each other how this fool had chosen the new path instead of IT. A former master scripter, Tiny Shim had become bitter. The conversation laughed of how they obtained a genius for such a simple task.<span>&nbsp; <\/span><\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&ldquo;What a fool&rdquo; was the final line of the conversation.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">Ebenezer stared up the Spirit with a trembling look. &ldquo;Spirit of who is this poor fiend? What job was he doomed to?&rdquo;<\/span><\/p>\n<div><\/div>\n<blockquote>\n<p class=\"CodeBlockScreened\">WRITE-HOST &ldquo;Would You Like Fries With That?&rdquo;<\/p>\n<\/blockquote>\n<p><span style=\"font-size:10.0pt\">&nbsp;<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">The Spirit of Windows PowerShell blinked at him coldly with the Cursor, reading his response.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&ldquo;Oh no! Spirit not a &hellip; a Burger Flipper!&rdquo; Realization hit him like an Osborne Executive dropped on his head. &ldquo;The poor soul was making hamburgers. Was that soul me?&rdquo;<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">A grim ASCII art face formed in the console as the following Cmdlet appeared.<\/span><\/p>\n<div><\/div>\n<blockquote>\n<p class=\"CodeBlockScreened\">D<span style=\"font-family: courier new,courier\">O { WRITE-HOST &#8220;Muah hah hah!! &#8221; -nonewline; Start-Sleep -milliseconds 50 } until ( $FALSE)<\/span><\/p>\n<\/blockquote>\n<p><span style=\"font-size: 10pt\"><span style=\"font-family: courier new,courier\">&nbsp;<\/span><\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&ldquo;Spirit! Please I beg of thee! I remember the joy I held. I see the light in Tiny Shim&rsquo;s eyes! I will learn from the joy Bob sees in code! I will dive into scripting with a passion no one has ever seen before! I will even sing &ldquo;Friday Funny&rdquo; songs! Oh, please Spirit, no more! I beg of thee. please! Stop the endless looping! I BEG of you!&rdquo;<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">Only one thing could be seen on the Spirit&rsquo;s console. A single answer appeared with a clear dark magenta screen and a single line of code.<\/span><\/p>\n<div><\/div>\n<p class=\"CodeBlockScreened\" style=\"padding-left: 30px\">G<span style=\"font-family: courier new,courier\">ET-PROCESS Ebenezer* | STOP-PROCESS<\/span><\/p>\n<p class=\"CodeBlockScreened\"><span style=\"font-family: courier new,courier\"><\/span>\n<span style=\"font-size:10.0pt\">Ebenezer vanished into the night.<\/span><\/p>\n<div><\/div>\n<p><i><span style=\"font-size:10.0pt\">&nbsp;<\/span><\/i><\/p>\n<div><\/div>\n<p><i><span style=\"font-size:10.0pt\">Panic! Did the Spirit of Scripting Future permanently End Ebenezer as a Process? If it didn&rsquo;t, did he learn? Is Chartered Accountancy just a made up job? Did anybody order fries with this? Stay tuned tomorrow for the exciting conclusion of A Windows PowerShell Carol. <\/span><\/i><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&nbsp;<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">SK, that is all there is to using Windows PowerShell. Thank you Sean, holiday guest blogger week will continue tomorrow when Sean will bring to us another day of A Windows PowerShell Carol . <\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">I invite you to follow me on <a target=\"_blank\" href=\"http:\/\/bit.ly\/scriptingguystwitter\">Twitter<\/a> or <a href=\"http:\/\/bit.ly\/scriptingguysfacebook\">Facebook<\/a>. If you have any questions, send email to me at <a target=\"_blank\" href=\"http:\/\/blogs.technet.commailto:scripter@microsoft.com\">scripter@microsoft.com<\/a> or post them on the <a target=\"_blank\" href=\"http:\/\/bit.ly\/scriptingforum\">Official Scripting Guys Forum<\/a>. See you tomorrow. Until then, keep cool.<\/span><\/p>\n<div><\/div>\n<p><span style=\"font-size:10.0pt\">&nbsp;<\/span><\/p>\n<div><\/div>\n<p><b><span style=\"font-size:10.0pt\">Ed Wilson, Microsoft Scripting Guy<\/span><\/b><\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; Summary: A Windows PowerShell Carol in which Ebenezer Script sees the future of scripting.&nbsp; &nbsp; Hey, Scripting Guy! Is it really possible to see the future with Windows PowerShell? &#8212; SK&nbsp; &nbsp; Hello SK, Microsoft Scripting Guy Ed Wilson here. It is almost the end of the year and we have decided to devote [&hellip;]<\/p>\n","protected":false},"author":595,"featured_media":87096,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[56,3,154,45],"class_list":["post-16121","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-scripting","tag-guest-blogger","tag-scripting-guy","tag-sean-kearney","tag-windows-powershell"],"acf":[],"blog_post_summary":"<p>&nbsp; Summary: A Windows PowerShell Carol in which Ebenezer Script sees the future of scripting.&nbsp; &nbsp; Hey, Scripting Guy! Is it really possible to see the future with Windows PowerShell? &#8212; SK&nbsp; &nbsp; Hello SK, Microsoft Scripting Guy Ed Wilson here. It is almost the end of the year and we have decided to devote [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/posts\/16121","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/users\/595"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/comments?post=16121"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/posts\/16121\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/media\/87096"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/media?parent=16121"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/categories?post=16121"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/scripting\/wp-json\/wp\/v2\/tags?post=16121"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}