{"id":2044,"date":"2012-01-31T10:54:46","date_gmt":"2012-01-31T15:54:46","guid":{"rendered":"http:\/\/jdhitsolutions.com\/blog\/?p=2044"},"modified":"2012-01-31T10:54:46","modified_gmt":"2012-01-31T15:54:46","slug":"maximizing-the-powershell-console-title-bar","status":"publish","type":"post","link":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/","title":{"rendered":"Maximizing the PowerShell Console Title Bar"},"content":{"rendered":"<p>A few days ago <a href=\"http:\/\/twitter.com\/proxb\" title=\"Follow on Twitter\" target=\"_blank\">Boe Prox<\/a> posted some very nifty PowerShell modules for using the <a href=\"http:\/\/learn-powershell.net\/2012\/01\/28\/turn-your-powershell-console-title-bar-into-a-rssweather-ticker\/\" title=\"Read his blog\" target=\"_blank\">title bar as a ticker<\/a> for RSS feeds like the weather. I thought this was an awesome idea and an easy way to take advantage of what would otherwise be unused screen space. I was especially intrigued with his use of timer objects and event subscriptions to manage the updating.<\/p>\n<p>Naturally I decided to run with this. My main goal was to take Boe's fundamental idea and turn it into something more re-usable or extensible.  My result is a module called ConsoleTitle. <\/p>\n<p><code Language=\"DOS\"><br \/>\nPS C:\\> get-command -Module ConsoleTitle | Select Name<\/p>\n<p>Name<br \/>\n----<br \/>\nGet-Inspiration<br \/>\nGet-SystemStat<br \/>\nGet-Timer<br \/>\nNew-Timer<br \/>\nRemove-Timer<br \/>\nSet-ConsoleTitle<br \/>\nSet-TimerInterval<br \/>\nStart-TitleTimer<br \/>\n<\/code><\/p>\n<p>The overall premise is pretty simple, define a global variable $PSConsoleTitle and use a timer to periodically update the console title bar with this value. During the refresh interval you can run whatever code you like, however you like, to provide a new value to the variable. In the module I've included two sample commands, Get-SystemStat and Get-Inspiration. The former uses WMI to gather system information from the local computer.<br \/>\n<a href=\"http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat-300x85.png\" alt=\"\" title=\"System Status Title Bar\" width=\"300\" height=\"85\" class=\"aligncenter size-medium wp-image-2045\" srcset=\"https:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat-300x85.png 300w, https:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat-1024x292.png 1024w, https:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat.png 1157w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>The other command defines an array of slogans, sayings and suggestions and randomly selects one to use as the title bar text.<\/p>\n<p><a href=\"http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title2-300x197.png\" alt=\"\" title=\"Inspiring Titles\" width=\"300\" height=\"197\" class=\"aligncenter size-medium wp-image-2046\" srcset=\"https:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title2-300x197.png 300w, https:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title2-1024x674.png 1024w, https:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title2.png 1157w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>The module includes a few commands for working with timer objects. You can use New-Timer in your own scripts.  Here's the function.<\/p>\n<p><code language=\"Powershell\"><br \/>\nFunction New-Timer {<\/p>\n<p><#\n.Synopsis\nCreate an event timer object\n.Description\nCreate an event timer object, primarily to be used by the ConsoleTitle module.\nEach timer job will automatically be added to the global variable, $ConsoleTitleEvents\nunless you use the -NoAdd parameter. This variable is used by Remove-Timer to clear\nconsole title related timers.\n\nThis function is called from within other module functions but you can use it to \ncreate non-module timers.\n\n.Parameter Identifier\nA source identifier for your timer\n.Parameter Refresh\nThe timer interval in Seconds. The default is 300 (5 minutes). Minimum\nvalue is 5 seconds.\n.Parameter Action\nThe scriptblock to execute when the timer runs down.\n.Parameter NoAdd\nDon't add the timer object to the $ConsoleTitleEvents global variable.\n#><\/p>\n<p>Param(<br \/>\n[Parameter(Position=0,Mandatory=$True,HelpMessage=\"Enter a source identifier for your timer\")]<br \/>\n[ValidateNotNullorEmpty()]<br \/>\n[string]$Identifier,<br \/>\n[Parameter(Position=1)]<br \/>\n[validatescript({$_ -ge 5})]<br \/>\n[int]$Refresh=300,<br \/>\n[Parameter(Position=2,Mandatory=$True,HelpMessage=\"Enter an action scriptblock\")]<br \/>\n[scriptblock]$Action,<br \/>\n[switch]$NoAdd<br \/>\n)<\/p>\n<p>Write-Verbose (\"Creating a timer called {0} to refresh every {1} seconds.\" -f $Identifier,$Refresh)<\/p>\n<p>#create a timer object<br \/>\n$timer = new-object timers.timer<br \/>\n#timer interval is in milliseconds<br \/>\n$timer.Interval = $Refresh*1000<br \/>\n$timer.Enabled=$True<\/p>\n<p>#create the event subscription and add to the global variable<br \/>\n$evt=Register-ObjectEvent -InputObject $timer -EventName elapsed \u2013SourceIdentifier  $Identifier  -Action $Action <\/p>\n<p>if (-Not $NoAdd) {<br \/>\n    #add the event to a global variable to track all events<br \/>\n    $global:ConsoleTitleEvents+=$evt<br \/>\n}<br \/>\n#start the timer<br \/>\n$timer.Start() <\/p>\n<p>} #Function<br \/>\n<\/code><\/p>\n<p>And here's how you might use it.<\/p>\n<p><code language=\"PowerShell\"><br \/>\nFunction Get-Inspiration {<\/p>\n<p>Param(<br \/>\n[Parameter(Position=0)]<br \/>\n[ValidateScript({$_ -ge 5})]<br \/>\n[int]$Refresh=600<br \/>\n)<\/p>\n<p>#Define an array of pithy sayings, slogans and quotes<\/p>\n<p>#we'll create as a globally scoped variable so you can add to it anytime you want from PowerShell<br \/>\n$global:slogans=@(<br \/>\n\"PowerShell Rocks!\",<br \/>\n\"Energize!!\",<br \/>\n\"To Shell and Back\",<br \/>\n\"I am the Shell\",<br \/>\n\"PowerShell to the People\",<br \/>\n\"Powered by PS\",<br \/>\n\"PowerShell Rulez!\",<br \/>\n\"PowerShell Fanboy\",<br \/>\n\"I am the walrus\",<br \/>\n\"Those who forget to script are doomed to repeat their work.\",<br \/>\n\"Have you backed up files lately?\",<br \/>\n\"Is your resume up to date?\",<br \/>\n\"Is it Beer O'Clock yet?\",<br \/>\n\"With great power comes great responsibility\",<br \/>\n\"I came, I saw, I scripted.\",<br \/>\n\"$env:username, Open the pod bay doors.\"<br \/>\n)<\/p>\n<p>$sb={ $global:PSConsoleTitle=$global:slogans | get-random }<br \/>\n#invoke the scriptblock<br \/>\nInvoke-Command $sb<\/p>\n<p>New-Timer -identifier \"SloganUpdate\" -action $sb -refresh $refresh<\/p>\n<p>#start the update timer if not already running<br \/>\nif (-Not (Get-EventSubscriber -SourceIdentifier \"TitleTimer\" -ea \"SilentlyContinue\")) {<br \/>\n    Start-TitleTimer -refresh $refresh<br \/>\n}<\/p>\n<p>} #function<br \/>\n<\/code><\/p>\n<p>Think of the module as a framework or SDK for building your own solutions. The module also includes an about topic. I hope you'll download <a href='http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/ConsoleTitle.zip'>ConsoleTitle<\/a>and let me know what you think.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few days ago Boe Prox posted some very nifty PowerShell modules for using the title bar as a ticker for RSS feeds like the weather. I thought this was an awesome idea and an easy way to take advantage of what would otherwise be unused screen space. I was especially intrigued with his use&#8230;<\/p>\n","protected":false},"author":1,"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_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[75,8,19],"tags":[176,358,221,534,253,540],"class_list":["post-2044","post","type-post","status-publish","format-standard","hentry","category-powershell-v2-0","category-scripting","category-wmi","tag-console","tag-eventsubscriber","tag-module","tag-powershell","tag-register-objectevent","tag-scripting"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Maximizing the PowerShell Console Title Bar &#8226; The Lonely Administrator<\/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:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Maximizing the PowerShell Console Title Bar &#8226; The Lonely Administrator\" \/>\n<meta property=\"og:description\" content=\"A few days ago Boe Prox posted some very nifty PowerShell modules for using the title bar as a ticker for RSS feeds like the weather. I thought this was an awesome idea and an easy way to take advantage of what would otherwise be unused screen space. I was especially intrigued with his use...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/\" \/>\n<meta property=\"og:site_name\" content=\"The Lonely Administrator\" \/>\n<meta property=\"article:published_time\" content=\"2012-01-31T15:54:46+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat-300x85.png\" \/>\n<meta name=\"author\" content=\"Jeffery Hicks\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@JeffHicks\" \/>\n<meta name=\"twitter:site\" content=\"@JeffHicks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jeffery Hicks\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/\"},\"author\":{\"name\":\"Jeffery Hicks\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/d0258030b41f07fd745f4078bdf5b6c9\"},\"headline\":\"Maximizing the PowerShell Console Title Bar\",\"datePublished\":\"2012-01-31T15:54:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/\"},\"wordCount\":261,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/d0258030b41f07fd745f4078bdf5b6c9\"},\"image\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/jdhitsolutions.com\\\/blog\\\/wp-content\\\/uploads\\\/2012\\\/01\\\/console-title-sysstat-300x85.png\",\"keywords\":[\"console\",\"eventsubscriber\",\"module\",\"PowerShell\",\"Register-ObjectEvent\",\"Scripting\"],\"articleSection\":[\"PowerShell v2.0\",\"Scripting\",\"WMI\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/\",\"url\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/\",\"name\":\"Maximizing the PowerShell Console Title Bar &#8226; The Lonely Administrator\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/jdhitsolutions.com\\\/blog\\\/wp-content\\\/uploads\\\/2012\\\/01\\\/console-title-sysstat-300x85.png\",\"datePublished\":\"2012-01-31T15:54:46+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/#primaryimage\",\"url\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/wp-content\\\/uploads\\\/2012\\\/01\\\/console-title-sysstat.png\",\"contentUrl\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/wp-content\\\/uploads\\\/2012\\\/01\\\/console-title-sysstat.png\",\"width\":\"1157\",\"height\":\"330\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/scripting\\\/2044\\\/maximizing-the-powershell-console-title-bar\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"PowerShell v2.0\",\"item\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/category\\\/powershell-v2-0\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Maximizing the PowerShell Console Title Bar\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/\",\"name\":\"The Lonely Administrator\",\"description\":\"Practical Advice for the Automating IT Pro\",\"publisher\":{\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/d0258030b41f07fd745f4078bdf5b6c9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/jdhitsolutions.com\\\/blog\\\/#\\\/schema\\\/person\\\/d0258030b41f07fd745f4078bdf5b6c9\",\"name\":\"Jeffery Hicks\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg\",\"caption\":\"Jeffery Hicks\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Maximizing the PowerShell Console Title Bar &#8226; The Lonely Administrator","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:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/","og_locale":"en_US","og_type":"article","og_title":"Maximizing the PowerShell Console Title Bar &#8226; The Lonely Administrator","og_description":"A few days ago Boe Prox posted some very nifty PowerShell modules for using the title bar as a ticker for RSS feeds like the weather. I thought this was an awesome idea and an easy way to take advantage of what would otherwise be unused screen space. I was especially intrigued with his use...","og_url":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/","og_site_name":"The Lonely Administrator","article_published_time":"2012-01-31T15:54:46+00:00","og_image":[{"url":"http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat-300x85.png","type":"","width":"","height":""}],"author":"Jeffery Hicks","twitter_card":"summary_large_image","twitter_creator":"@JeffHicks","twitter_site":"@JeffHicks","twitter_misc":{"Written by":"Jeffery Hicks","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/#article","isPartOf":{"@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/"},"author":{"name":"Jeffery Hicks","@id":"https:\/\/jdhitsolutions.com\/blog\/#\/schema\/person\/d0258030b41f07fd745f4078bdf5b6c9"},"headline":"Maximizing the PowerShell Console Title Bar","datePublished":"2012-01-31T15:54:46+00:00","mainEntityOfPage":{"@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/"},"wordCount":261,"commentCount":2,"publisher":{"@id":"https:\/\/jdhitsolutions.com\/blog\/#\/schema\/person\/d0258030b41f07fd745f4078bdf5b6c9"},"image":{"@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/#primaryimage"},"thumbnailUrl":"http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat-300x85.png","keywords":["console","eventsubscriber","module","PowerShell","Register-ObjectEvent","Scripting"],"articleSection":["PowerShell v2.0","Scripting","WMI"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/","url":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/","name":"Maximizing the PowerShell Console Title Bar &#8226; The Lonely Administrator","isPartOf":{"@id":"https:\/\/jdhitsolutions.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/#primaryimage"},"image":{"@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/#primaryimage"},"thumbnailUrl":"http:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat-300x85.png","datePublished":"2012-01-31T15:54:46+00:00","breadcrumb":{"@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/#primaryimage","url":"https:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat.png","contentUrl":"https:\/\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2012\/01\/console-title-sysstat.png","width":"1157","height":"330"},{"@type":"BreadcrumbList","@id":"https:\/\/jdhitsolutions.com\/blog\/scripting\/2044\/maximizing-the-powershell-console-title-bar\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"PowerShell v2.0","item":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell-v2-0\/"},{"@type":"ListItem","position":2,"name":"Maximizing the PowerShell Console Title Bar"}]},{"@type":"WebSite","@id":"https:\/\/jdhitsolutions.com\/blog\/#website","url":"https:\/\/jdhitsolutions.com\/blog\/","name":"The Lonely Administrator","description":"Practical Advice for the Automating IT Pro","publisher":{"@id":"https:\/\/jdhitsolutions.com\/blog\/#\/schema\/person\/d0258030b41f07fd745f4078bdf5b6c9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/jdhitsolutions.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/jdhitsolutions.com\/blog\/#\/schema\/person\/d0258030b41f07fd745f4078bdf5b6c9","name":"Jeffery Hicks","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg","url":"https:\/\/secure.gravatar.com\/avatar\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg","caption":"Jeffery Hicks"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/832ae5d438fdcfc1420d720cd1991307927de8a0b12f2342e81c30f773e21098?s=96&d=wavatar&r=pg"}}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"jetpack-related-posts":[{"id":5806,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/5806\/a-powershell-countdown-timer\/","url_meta":{"origin":2044,"position":0},"title":"A PowerShell Countdown Timer","author":"Jeffery Hicks","date":"December 6, 2017","format":false,"excerpt":"The other day, during one of the monthly #PSTweetChat sessions, I exchanged some tweets with Joshua King. We got on the topic of countdown timers and he shared some code he uses for his YouTube channel. The command creates a progress bar and counts down, displaying some humorous messages along\u2026","rel":"","context":"In &quot;PowerShell&quot;","block_context":{"text":"PowerShell","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":9154,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/9154\/a-wpf-countdown-timer\/","url_meta":{"origin":2044,"position":1},"title":"A WPF Countdown Timer","author":"Jeffery Hicks","date":"October 19, 2022","format":false,"excerpt":"Last year I released a PowerShell module called PSClock. The module contains a command to create a transparent WPF form displaying a clock. Shortly after, someone posted a request for a countdown timer. Not an unreasonable request and one I finally got around to implementing. However, I already had a\u2026","rel":"","context":"In &quot;PowerShell&quot;","block_context":{"text":"PowerShell","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell\/"},"img":{"alt_text":"pscountdown timer","src":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2022\/10\/countdowntimer.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2022\/10\/countdowntimer.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2022\/10\/countdowntimer.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2022\/10\/countdowntimer.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":5172,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/5172\/friday-fun-timing-is-everything\/","url_meta":{"origin":2044,"position":2},"title":"Friday Fun: Timing is Everything","author":"Jeffery Hicks","date":"July 8, 2016","format":false,"excerpt":"For today's fun I want to introduce you to a PowerShell project I've been working on. As with many of these Friday Fun projects this is something that is hardly groundbreaking but it could be fun to use and hopefully serves an educational purpose.\u00a0 What I have is a module\u2026","rel":"","context":"In &quot;Friday Fun&quot;","block_context":{"text":"Friday Fun","link":"https:\/\/jdhitsolutions.com\/blog\/category\/friday-fun\/"},"img":{"alt_text":"Find my PowerShell timer variables","src":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2016\/07\/image_thumb-3.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":2318,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/2318\/introducing-the-scriptinghelp-powershell-module\/","url_meta":{"origin":2044,"position":3},"title":"Introducing the ScriptingHelp PowerShell Module","author":"Jeffery Hicks","date":"May 16, 2012","format":false,"excerpt":"Over the last few weeks I've posted articles on the different parameter validation options in Windows PowerShell. More than one person suggested consolidating the articles. That seemed like a good idea. There were a variety of ways to handle this but I wanted something more PowerShell-oriented. Then I realized, why\u2026","rel":"","context":"In &quot;PowerShell&quot;","block_context":{"text":"PowerShell","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2011\/03\/helpbubble.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":3971,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/3971\/tracking-your-day-with-powershell\/","url_meta":{"origin":2044,"position":4},"title":"Tracking Your Day with PowerShell","author":"Jeffery Hicks","date":"August 26, 2014","format":false,"excerpt":"Not too long ago, I received an email with a snippet of PowerShell code and a request for assistance. The code snippet used a little .NET code to retrieve the process for the currently active window. The goal was to have a PowerShell script run, keeping track of how long\u2026","rel":"","context":"In &quot;PowerShell&quot;","block_context":{"text":"PowerShell","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell\/"},"img":{"alt_text":"timer","src":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2014\/05\/timer.png?resize=350%2C200","width":350,"height":200},"classes":[]},{"id":9117,"url":"https:\/\/jdhitsolutions.com\/blog\/powershell\/9117\/organizing-chaos-with-psworkitems-and-powershell\/","url_meta":{"origin":2044,"position":5},"title":"Organizing Chaos with PSWorkItems and PowerShell","author":"Jeffery Hicks","date":"August 3, 2022","format":false,"excerpt":"I spend my working days living in a PowerShell console. Over the years, I've developed many PowerShell modules to help me manage the chaos that is my work life. One area that always demands attention is managing my tasks and To-Dos. For several years I have been using the MyTasks\u2026","rel":"","context":"In &quot;PowerShell&quot;","block_context":{"text":"PowerShell","link":"https:\/\/jdhitsolutions.com\/blog\/category\/powershell\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2022\/08\/get-psworkitem.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2022\/08\/get-psworkitem.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2022\/08\/get-psworkitem.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/jdhitsolutions.com\/blog\/wp-content\/uploads\/2022\/08\/get-psworkitem.png?resize=700%2C400&ssl=1 2x"},"classes":[]}],"_links":{"self":[{"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/2044","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/comments?post=2044"}],"version-history":[{"count":0,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/posts\/2044\/revisions"}],"wp:attachment":[{"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/media?parent=2044"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/categories?post=2044"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jdhitsolutions.com\/blog\/wp-json\/wp\/v2\/tags?post=2044"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}