I'm having an issue with using Get-Item in PowerShell for certain file paths. I've got some paths pointing to .docx and .pdf documents, but when I run the command "Get-Item $path", it returns null. However, when I check with "Test-Path $path", the result is false. Interestingly, if I run the command "& $path", it successfully opens the document. The length of $path varies between 141 and 274 characters. I'm a bit stuck and unsure what to further investigate or search for. Any insights would be greatly appreciated!
3 Answers
Can you clarify what you're trying to achieve with Get-Item? I did a quick test with the path "C:Temp" and it worked fine. I wonder if there's something specific about the paths you're dealing with that could affect the command?
Make sure to check what exactly is stored in $path. If it's pointing to files, but Test-Path shows false, then the file might not exist at that location. Just keep in mind that the .Length property is just counting the characters, not verifying if the file is there.
I added the info to my original post! The paths I’ve seen causing issues are for .docx and .pdf files.
The problem might be due to wildcards in your path. Can you confirm what the exact value of `$path` is? If it's using wildcards like `[]`, the Get-Item command interprets those as expressions and won't return anything if it doesn't match. I suggest using -LiteralPath when calling this cmdlet. This will treat the path exactly as it is without any wildcard interpretation. For instance, you can try: `Get-Item -LiteralPath $path`.
It was wildcards! Thanks for the help!

Good to know! Using the path you provided worked as expected, but my specific paths seem to have an issue that returns nothing.