$obj = $args[0] If ($obj.GetType().Name -eq 'String') {$obj = gi $obj} 'File: ' + $obj.FullName 'Size: ' + $obj.Length $extents = [string](fsutil file queryextents "$($obj.FullName)") If (-$extents.StartsWith('i')) { 'Clusters: ' + ($extents.Substring(26) -split 'LCN')[0] 'LCN: ' + $extents.Substring(42) } Else { 'Clusters: stored in file table' } 'Attributes: ' + $obj.Attributes $volumeinfo = (fsutil fsinfo volumeinfo "$([System.IO.Path]::GetPathRoot($obj.FullName)[0] + ':')") $volumeinfo | ? {$_.StartsWith('Volume Serial')} | % {$_.Replace(' :', ':')} $fileid = (fsutil file queryfileid "$($obj.FullName)") 'File ID: ' + $fileid.Substring(11) $links = (fsutil hardlink list "$($obj.FullName)") 'Links: ' + ([string[]]$links).Length 'Owner: ' + $obj.GetAccessControl().Owner '' 'Access: ' + $obj.LastAccessTime 'Modify: ' + $obj.LastWriteTime 'Create: ' + $obj.CreationTime '' # Extra blank line for readability
Various technical articles, IT-related tutorials, software information, and development journals
Wednesday, September 28, 2016
PowerShell-based Windows version of "stat"
Unix-like OSes have a "stat" command that produces certain interesting information on a file system object. One questioner was wondering what the Windows equivalent is. I don't believe there's a single command to produce all that, but I did put together a PowerShell script:
Labels:
windows
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment