{"id":538,"date":"2018-10-01T08:00:16","date_gmt":"2018-10-01T14:00:16","guid":{"rendered":"https:\/\/practicalpowershell.com\/?p=538"},"modified":"2020-03-14T11:38:39","modified_gmt":"2020-03-14T17:38:39","slug":"how-unique-output-files","status":"publish","type":"post","link":"https:\/\/practicalpowershell.com\/how-unique-output-files\/","title":{"rendered":"How Unique &#8211; Output Files"},"content":{"rendered":"<p>Unique output files:<BR><\/p>\n<ul>\n<li>Date\n<li>Random number\n<li>Append\n<li>Noclobber\n<ul>\nWhen working with output files it is sometimes necessary to create some sort of uniqueness factor. The purpose of this uniqueness factor is to make sure that the files is not overwritten by a subsequent re-running of a script manually or even as part of a scheduled task. Other factors that may necessitate this uniqueness are keeping track of when a log file or results file were written for testing or eventually for production.<BR><br \/>\n<em>** One caveat to making the file name unique is that it could make it harder to find if a script needs the output for a later operation. We covered how to keep track of these in a previous Tip of the Week.<\/em><BR><br \/>\n<u>Uniqueness Factor Type &#8211; Date<\/u><BR><br \/>\nOne of the easiest uniqueness factors to use when generating a file name is a current date or current date and time. Depending on how often a script process is run and the log file generated, should help determine what date format to use. This is import as the Get-Date cmdlet in PowerShell can be used to formulate the date and time to something simple to very complete. Also remember that if using this for files names do not use characters that cannot be placed in file names like backslashes.<BR><br \/>\nThe default output of Get-Date is completely useless for file names:<br \/>\n<a href=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg?resize=344%2C52&#038;ssl=1\" alt=\"\" width=\"344\" height=\"52\" class=\"aligncenter size-full wp-image-539\" srcset=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg?w=344&amp;ssl=1 344w, https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg?resize=300%2C45&amp;ssl=1 300w\" sizes=\"auto, (max-width: 344px) 100vw, 344px\" \/><\/a><br \/>\nAs such we&#8217;ll need to tweak this output to the format we need. Some formatting conventions to help us move forward:<BR><br \/>\n<em>Date:<br \/>\nD Date in mm\/dd\/yy format (06\/14\/06)<br \/>\nx Date in standard format for locale (09\/12\/07 for English-US)<br \/>\nYear:<br \/>\nC Century (20 for 2006)<br \/>\nY Year in 4-digit format (2006)<br \/>\ny Year in 2-digit format (06)<br \/>\nG Same as &#8216;Y&#8217;<br \/>\ng Same as &#8216;y&#8217;<br \/>\nMonth:<br \/>\nb Month name &#8211; abbreviated (Jan)<br \/>\nB Month name &#8211; full (January)<br \/>\nh Same as &#8216;b&#8217;<br \/>\nm Month number (06)<br \/>\nWeek:<br \/>\nW Week of the year (00-52)<br \/>\nV Week of the year (01-53)<br \/>\nU Same as &#8216;W&#8217;<br \/>\nDay:<br \/>\na Day of the week &#8211; abbreviated name (Mon)<br \/>\nA Day of the week &#8211; full name (Monday)<br \/>\nu Day of the week &#8211; number (Monday = 1)<br \/>\nd Day of the month &#8211; 2 digits (05)<br \/>\ne Day of the month &#8211; digit preceded by a space ( 5)<br \/>\nj Day of the year &#8211; (1-366)<br \/>\nw Same as &#8216;u&#8217;<br \/>\nTime:<br \/>\np AM or PM<br \/>\nr Time in 12-hour format (09:15:36 AM)<br \/>\nR Time in 24-hour format &#8211; no seconds (17:45)<br \/>\nT Time in 24 hour format (17:45:52)<br \/>\nX Same as &#8216;T&#8217;<br \/>\nZ Time zone offset from Universal Time Coordinate (UTC) (-07)<br \/>\nHour:<br \/>\nH Hour in 24-hour format (17)<br \/>\nI Hour in 12 hour format (05)<br \/>\nk Same as &#8216;H&#8217;<br \/>\nl Same as &#8216;I&#8217; (Upper-case I = Lower-case L)<br \/>\nMinutes &#038; Seconds:<br \/>\nM Minutes (35)<br \/>\nS Seconds (05)<br \/>\ns Seconds elapsed since January 1, 1970 00:00:00 (1150451174.95705)<br \/>\nSpecial Characters:<br \/>\nn newline character (\\n)<br \/>\nt Tab character (\\t) <\/em><BR><br \/>\nAs you can see there are a lot of options for formatting the output of the Get-Date cmdlet. First, we&#8217;ll start simple and build out to a complex date format that can be used for file names.<BR><br \/>\n<em>Day, Month, Year<\/em><BR><br \/>\nNow depending on your locality, the exact arrangement of the digits will differ. The key is to remember what you used for your date format. Because June 6, 2018 (20180606, 2018-06-06, 06-06-2018, 06-06-2018) is an easy one to work with. Whereas December first may cause confusion (20181201, 2018-12-01, 12-01-2018, 01-12-2018).<BR><br \/>\n<em>yyyy-mm-dd 2018-09-25<br \/>\nyyyy-dd-mm 2018-25-09<br \/>\nmm-dd-yyyy 09-25-2018<br \/>\nDd-mm-yyyy 25-09-2018<\/em><BR><br \/>\nFor a script that is run on a daily basis, this is a good, simple data to return. Applying this to a log or data file is simple, like so:<br \/>\n[sourcecode language=&#8221;powershell&#8221;]<br \/>\n$OutPutFileNameBase1 = &#039;AllMailboxes-Cloud&#039;<br \/>\n$LogFileNameBase1 = &#039;ScriptErrorLog&#039;<br \/>\n$CurrentDate = Get-Date -Format yyyy-mm-dd<br \/>\n$OutPutFileNameFull1 = $OutPutFileNameBase1+&quot;-&quot;+$CurrentDate<br \/>\n$LogFileNameFull1 = $LogFileNameBase1+&quot;-&quot;+$CurrentDate<br \/>\n[\/sourcecode]<br \/>\n<a href=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-02.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-02.jpg?resize=252%2C98&#038;ssl=1\" alt=\"\" width=\"252\" height=\"98\" class=\"aligncenter size-full wp-image-540\" \/><\/a><br \/>\nNow we have a simple and unique name (if the script is run daily) allowing us to use this for logs, output and error files, for example. Now what if the script runs more often or needs a finer pinpoint on when the output file was generated? Well, we need to add some more detail to the date added to the file name.<br \/>\n[sourcecode language=&#8221;powershell&#8221;]<br \/>\n$CurrentDate = Get-Date -Format yyyymmdd-hhmmss<br \/>\n[\/sourcecode]<br \/>\nUsing the previous code as an example and changing the date format to be more specific, the code looks like this:<br \/>\n[sourcecode language=&#8221;powershell&#8221;]<br \/>\n$OutPutFileNameBase1 = &#039;AllMailboxes-Cloud&#039;<br \/>\n$LogFileNameBase1 = &#039;ScriptErrorLog&#039;<br \/>\n$CurrentDate = Get-Date -Format yyyyymmdd-hhmmss<br \/>\n$OutPutFileNameFull1 = $OutPutFileNameBase1+&quot;-&quot;+$CurrentDate<br \/>\n$LogFileNameFull1 = $LogFileNameBase1+&quot;-&quot;+$CurrentDate<br \/>\n[\/sourcecode]<br \/>\nThe output then looks like this:<br \/>\n<a href=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-03.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-03.jpg?resize=303%2C98&#038;ssl=1\" alt=\"\" width=\"303\" height=\"98\" class=\"aligncenter size-full wp-image-541\" srcset=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-03.jpg?w=303&amp;ssl=1 303w, https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-03.jpg?resize=300%2C97&amp;ssl=1 300w\" sizes=\"auto, (max-width: 303px) 100vw, 303px\" \/><\/a><br \/>\n<em>Uniqueness Factor Type &#8211; Random Number<\/em><br \/>\nAnother way to generate unique files is to keep the same base file name and add a random number to the end of the file. Depending on how often these files are generated, the number of digits for the random number may need to be high. Because there is absolutely no guarantee that the filename will be unique, you may need to build in logic to check for an existing file of that same name to prevent overwriting files. This caveat is one of the biggest reasons to use the Date in the file name and not a random number.<br \/>\nIf we look for cmdlets in PowerShell that contain the word &#8216;Random&#8217; in it:<br \/>\nGet-Command *random*<br \/>\nWe see that there is only one cmdlet that meets that criteria. If we type the cmdlet into a PowerShell session, it generates a random 9+ digit number. Below are three samples from the cmdlet when run one after the other:<BR><br \/>\n<em>1131270443<br \/>\n556361410<br \/>\n1225835655<\/em><BR><br \/>\nIn order to tweak the output, you can set a minimum number, a maximum number and even provide a seed number to help generate the random numbers. For creating file names, the default length will probably be sufficient:<br \/>\n[sourcecode language=&#8221;powershell&#8221;]<br \/>\n$Random = Get-Random<br \/>\n[\/sourcecode]<br \/>\nSo using the code example from the previous example, we get something like this:<br \/>\n[sourcecode language=&#8221;powershell&#8221;]<br \/>\n$OutPutFileNameBase1 = &#039;AllMailboxes-Cloud&#039;<br \/>\n$LogFileNameBase1 = &#039;ScriptErrorLog&#039;<br \/>\n$Random = Get-Random<br \/>\n$OutPutFileNameFull1 = $OutPutFileNameBase1+&quot;-&quot;+$Random<br \/>\n$LogFileNameFull1 = $LogFileNameBase1+&quot;-&quot;+$Random<br \/>\n[\/sourcecode]<br \/>\nIf we are worried about duplicate file names, we can introduce logic to handle this:<br \/>\n[sourcecode language=&#8221;powershell&#8221;]<br \/>\n$RandomCheck1 = $OutPutFileNameBase1+&quot;-&quot;+$Random<br \/>\nIf (-NOT (Test-Path $RandomCheck1)) {$OutPutFileNameFull1 = $OutPutFileNameBase1+&quot;-&quot;+$Random}<br \/>\n$RandomCheck2 = $LogFileNameBase1+&quot;-&quot;+$Random<br \/>\nIf (-NOT (Test-Path $RandomCheck2)) {$LogFileNameFull1 = $LogFileNameBase1+&quot;-&quot;+$Random}<br \/>\n[\/sourcecode]<br \/>\nNow when we run this, we&#8217;ll get these names for the files:<br \/>\n<a href=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-04.jpg?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-04.jpg?resize=237%2C95&#038;ssl=1\" alt=\"\" width=\"237\" height=\"95\" class=\"aligncenter size-full wp-image-542\" \/><\/a><br \/>\nThat&#8217;s it. Now you can go create your random files for output from your scripts.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Unique output files: Date Random number Append Noclobber When working with output files it is sometimes necessary to create some sort of uniqueness factor. The purpose of this uniqueness factor is to make sure that the files is not overwritten by a subsequent re-running of a script manually or even as part of a scheduled [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rop_custom_images_group":[],"rop_custom_messages_group":[],"rop_publish_now":"initial","rop_publish_now_accounts":[],"rop_publish_now_history":[],"rop_publish_now_status":"pending","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-538","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How Unique - Output Files - Practical PowerShell<\/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:\/\/practicalpowershell.com\/how-unique-output-files\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How Unique - Output Files - Practical PowerShell\" \/>\n<meta property=\"og:description\" content=\"Unique output files: Date Random number Append Noclobber When working with output files it is sometimes necessary to create some sort of uniqueness factor. The purpose of this uniqueness factor is to make sure that the files is not overwritten by a subsequent re-running of a script manually or even as part of a scheduled [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/practicalpowershell.com\/how-unique-output-files\/\" \/>\n<meta property=\"og:site_name\" content=\"Practical PowerShell\" \/>\n<meta property=\"article:published_time\" content=\"2018-10-01T14:00:16+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-03-14T17:38:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg\" \/>\n<meta name=\"author\" content=\"damian\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"damian\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/\"},\"author\":{\"name\":\"damian\",\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/#\\\/schema\\\/person\\\/4d0733c81966e744aabbb49f56d64deb\"},\"headline\":\"How Unique &#8211; Output Files\",\"datePublished\":\"2018-10-01T14:00:16+00:00\",\"dateModified\":\"2020-03-14T17:38:39+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/\"},\"wordCount\":1074,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/#\\\/schema\\\/person\\\/4d0733c81966e744aabbb49f56d64deb\"},\"image\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/practicalpowershell.com\\\/wp-content\\\/uploads\\\/2020\\\/03\\\/PSTIP20181001-01.jpg\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/\",\"url\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/\",\"name\":\"How Unique - Output Files - Practical PowerShell\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/practicalpowershell.com\\\/wp-content\\\/uploads\\\/2020\\\/03\\\/PSTIP20181001-01.jpg\",\"datePublished\":\"2018-10-01T14:00:16+00:00\",\"dateModified\":\"2020-03-14T17:38:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/practicalpowershell.com\\\/wp-content\\\/uploads\\\/2020\\\/03\\\/PSTIP20181001-01.jpg?fit=344%2C52&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/practicalpowershell.com\\\/wp-content\\\/uploads\\\/2020\\\/03\\\/PSTIP20181001-01.jpg?fit=344%2C52&ssl=1\",\"width\":344,\"height\":52},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/how-unique-output-files\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/practicalpowershell.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How Unique &#8211; Output Files\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/#website\",\"url\":\"https:\\\/\\\/practicalpowershell.com\\\/\",\"name\":\"Practical PowerShell\",\"description\":\"PowerShell books written by experts\",\"publisher\":{\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/#\\\/schema\\\/person\\\/4d0733c81966e744aabbb49f56d64deb\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/practicalpowershell.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/practicalpowershell.com\\\/#\\\/schema\\\/person\\\/4d0733c81966e744aabbb49f56d64deb\",\"name\":\"damian\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d5a8cc64a5aa27558a897b108e3be1a89859511a3fd26176dac292f26e7a4ae4?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d5a8cc64a5aa27558a897b108e3be1a89859511a3fd26176dac292f26e7a4ae4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d5a8cc64a5aa27558a897b108e3be1a89859511a3fd26176dac292f26e7a4ae4?s=96&d=mm&r=g\",\"caption\":\"damian\"},\"logo\":{\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/d5a8cc64a5aa27558a897b108e3be1a89859511a3fd26176dac292f26e7a4ae4?s=96&d=mm&r=g\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How Unique - Output Files - Practical PowerShell","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:\/\/practicalpowershell.com\/how-unique-output-files\/","og_locale":"en_US","og_type":"article","og_title":"How Unique - Output Files - Practical PowerShell","og_description":"Unique output files: Date Random number Append Noclobber When working with output files it is sometimes necessary to create some sort of uniqueness factor. The purpose of this uniqueness factor is to make sure that the files is not overwritten by a subsequent re-running of a script manually or even as part of a scheduled [&hellip;]","og_url":"https:\/\/practicalpowershell.com\/how-unique-output-files\/","og_site_name":"Practical PowerShell","article_published_time":"2018-10-01T14:00:16+00:00","article_modified_time":"2020-03-14T17:38:39+00:00","og_image":[{"url":"https:\/\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg","type":"","width":"","height":""}],"author":"damian","twitter_card":"summary_large_image","twitter_misc":{"Written by":"damian","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/#article","isPartOf":{"@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/"},"author":{"name":"damian","@id":"https:\/\/practicalpowershell.com\/#\/schema\/person\/4d0733c81966e744aabbb49f56d64deb"},"headline":"How Unique &#8211; Output Files","datePublished":"2018-10-01T14:00:16+00:00","dateModified":"2020-03-14T17:38:39+00:00","mainEntityOfPage":{"@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/"},"wordCount":1074,"commentCount":0,"publisher":{"@id":"https:\/\/practicalpowershell.com\/#\/schema\/person\/4d0733c81966e744aabbb49f56d64deb"},"image":{"@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/#primaryimage"},"thumbnailUrl":"https:\/\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg","inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/practicalpowershell.com\/how-unique-output-files\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/","url":"https:\/\/practicalpowershell.com\/how-unique-output-files\/","name":"How Unique - Output Files - Practical PowerShell","isPartOf":{"@id":"https:\/\/practicalpowershell.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/#primaryimage"},"image":{"@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/#primaryimage"},"thumbnailUrl":"https:\/\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg","datePublished":"2018-10-01T14:00:16+00:00","dateModified":"2020-03-14T17:38:39+00:00","breadcrumb":{"@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/practicalpowershell.com\/how-unique-output-files\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/#primaryimage","url":"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg?fit=344%2C52&ssl=1","contentUrl":"https:\/\/i0.wp.com\/practicalpowershell.com\/wp-content\/uploads\/2020\/03\/PSTIP20181001-01.jpg?fit=344%2C52&ssl=1","width":344,"height":52},{"@type":"BreadcrumbList","@id":"https:\/\/practicalpowershell.com\/how-unique-output-files\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/practicalpowershell.com\/"},{"@type":"ListItem","position":2,"name":"How Unique &#8211; Output Files"}]},{"@type":"WebSite","@id":"https:\/\/practicalpowershell.com\/#website","url":"https:\/\/practicalpowershell.com\/","name":"Practical PowerShell","description":"PowerShell books written by experts","publisher":{"@id":"https:\/\/practicalpowershell.com\/#\/schema\/person\/4d0733c81966e744aabbb49f56d64deb"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/practicalpowershell.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/practicalpowershell.com\/#\/schema\/person\/4d0733c81966e744aabbb49f56d64deb","name":"damian","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/d5a8cc64a5aa27558a897b108e3be1a89859511a3fd26176dac292f26e7a4ae4?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/d5a8cc64a5aa27558a897b108e3be1a89859511a3fd26176dac292f26e7a4ae4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/d5a8cc64a5aa27558a897b108e3be1a89859511a3fd26176dac292f26e7a4ae4?s=96&d=mm&r=g","caption":"damian"},"logo":{"@id":"https:\/\/secure.gravatar.com\/avatar\/d5a8cc64a5aa27558a897b108e3be1a89859511a3fd26176dac292f26e7a4ae4?s=96&d=mm&r=g"}}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/posts\/538","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/comments?post=538"}],"version-history":[{"count":1,"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/posts\/538\/revisions"}],"predecessor-version":[{"id":543,"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/posts\/538\/revisions\/543"}],"wp:attachment":[{"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/media?parent=538"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/categories?post=538"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/practicalpowershell.com\/wp-json\/wp\/v2\/tags?post=538"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}