适用于所有PowerShell版本
所有的.NET对象都有一个ToString()方法,返回该对象代表的文本描述。我们在PowerShell中输出一个对象时,默认也会调用这个对象的ToString方法,但是同类型的ToString返回的对象也可能是不同的,所以在不确定的情况下最好不要随意使用。
比如下面的脚本,两行脚本都会生成一个FileInfo对象,分别代表这同一个文件。唯一的不同只是他们的创建方式不同,但是他们的属性都是一致的,然后ToString()方法返回的结果却迥异。
PS> $file1 = Get-ChildItem $env:windir -Filter regedit.exe PS> $file2 = Get-Item $env:windir\regedit.exe $file1.FullName; $file2.FullName C:\WINDOWS\regedit.exe C:\WINDOWS\regedit.exe PS> $file1.GetType().FullName; $file2.GetType().FullName System.IO.FileInfo System.IO.FileInfo PS> $file1.ToString(); $file2.ToString() regedit.exe C:\WINDOWS\regedit.exe
你可能会大叫“Ou,my gold”,怎么可能,这怎么可能,不急,我们下篇文章来揭开这个ToString()返回值竟然不同的神秘面纱。
本文链接: https://www.pstips.net/a556ca.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!