Reply to thread

Am going to try a script with some spacing,not extensive, but I'll copy and paste into a CODE box to see if code box works with no problems.


[code]

# ************************************************************

# Puts DISKINFO.TXT on your Desktop.

# contains info about your disks, partitions, and volumes

# ************************************************************


function get-ID {

  param ([string]$title, [int]$arraycnt, [int]$arrayndx)

  $id = " " + $title + " "

  If ($arraycnt -ne 1) {$id = $id + [string]$arrayndx + " "}

  $id }

function get-title { param ([string]$id)

  $hashes = ([int](51 - $id.length)/2)

  $hashstr = '#' * $hashes

  $title = $hashstr + $id + $hashstr

  If ($title.length -le 51) {$title += "#"}

  $title  }

$sterne = "*" * 79

$obj = New-Object PSObject


$dskarr =@(gwmi win32_diskdrive)

$cnt = $dskarr.count

for($ndx=1; $ndx -le $cnt; $ndx++) {

  $d = $dskarr[$ndx -1];

  $id = get-id "DISK" $cnt $ndx

  $obj | Add-member -membertype noteproperty -name (get-title $id) -value $sterne

  $obj | add-member -membertype noteproperty -name ($id + "Model") -value($d.model)

  $obj | add-member -membertype noteproperty -name ($id + "Size") -value([string][int]($d.size/1073741824) + " GB")

  $obj | add-member -membertype noteproperty -name ($id + "Status") -value($d.status)

  $obj | add-member -membertype noteproperty -name ($id + "Capabilities") -value($d.capabilitydescriptions)

  $obj | add-member -membertype noteproperty -name ($id + "Interface Type") -value($d.interfacetype)

  $obj | add-member -membertype noteproperty -name ($id + "Partitions") -value($d.partitions)

  $obj | add-member -membertype noteproperty -name ($id + "Bytespersector") -value($d.bytespersector)

  $obj | add-member -membertype noteproperty -name ($id + "Sectors per track") -value($d.sectorspertrack)

  $obj | add-member -membertype noteproperty -name ($id + "Firmware revision") -value($d.firmwarerevision)

  $obj | add-member -membertype noteproperty -name ($id + "Device ID") -value($d.deviceid)

  $obj | add-member -membertype noteproperty -name ($id + "PNP Device ID") -value($d.pnpdeviceid)

}

$dsk =@(gwmi win32_LogicalDisk)

$cnt = $dsk.count

for($ndx=1; $ndx -le $cnt; $ndx++){

  $d = $dsk[$ndx-1];

  $id = get-id "LOGICAL DISK" $cnt $ndx

  $obj | add-member -membertype noteproperty -name (get-title $id)  -value $sterne

  $obj | add-member -membertype noteproperty -name ($id + "Caption") -value($d.caption)

  $obj | add-member -membertype noteproperty -name ($id + "Volume Name") -value($d.volumename)

  $obj | add-member -membertype noteproperty -name ($id + "Description") -value($d.description)

  $obj | add-member -membertype noteproperty -name ($id + "Size") -value([string][int]($d.size/1073741824) + " GB")

  $obj | add-member -membertype noteproperty -name ($id + "Used Space") -value ([string][int](($d.size - $d.freespace)/1073741824) + " GB")

  $obj | add-member -membertype noteproperty -name ($id + "Free Space") -value([string][int]($d.freespace/1073741824) + " GB")

  $obj | add-member -membertype noteproperty -name ($id + "File System") -value($d.filesystem)

  $obj | add-member -membertype noteproperty -name ($id + "Compressed") -value($d.compressed)

  $obj | add-member -membertype noteproperty -name ($id + "Volume Dirty") -value($d.volumedirty)

  $obj | add-member -membertype noteproperty -name ($id + "Volume Serial Number") -value($d.volumeserialnumber)

}

$dsk =@(gwmi win32_diskpartition)

$cnt = $dsk.count

for($ndx=1; $ndx -le $cnt; $ndx++){

  $d = $dsk[$ndx-1];

  $id = get-id "DISK PARTITION" $cnt $ndx

  $obj | add-member -membertype noteproperty -name (GET-title $id)  -value $sterne

  $obj | add-member -membertype noteproperty -name ($id + "Caption") -value($d.caption)

  $obj | add-member -membertype noteproperty -name ($id + "Size") -value([string][int]($d.size/1073741824) + " GB")

  $obj | add-member -membertype noteproperty -name ($id + "Primary Partition") -value($d.primarypartition)

  $obj | add-member -membertype noteproperty -name ($id + "Boot Partition") -value($d.bootpartition)

  $obj | add-member -membertype noteproperty -name ($id + "Bootable") -value($d.bootable)

  $obj | add-member -membertype noteproperty -name ($id + "Block Size") -value($d.blocksize)

  $obj | add-member -membertype noteproperty -name ($id + "Number of Blocks") -value($d.numberofblocks)

  $obj | add-member -membertype noteproperty -name ($id + "Starting Offset") -value($d.startingoffset)

}

function Get-DrvType ($n) {

  switch ([int]$n) {

   2  {$result = "Removable"}

   3  {$result = "Partition"}

   5  {$result = "CDROM"}

   default {$result = "Unknown"}

   }

  $result

}

$dsk = @(gwmi win32_volume)

$cnt = $dsk.count

for ($ndx=1; $ndx -le $cnt; $ndx++) {

  $d = $dsk[$ndx-1]

  $id = get-id "DISK VOLUME" $cnt $ndx

  $obj | add-member -membertype noteproperty -name (get-title $id)  -value $sterne

  $obj | add-member -membertype noteproperty -name ($id + "Caption") -value($d.caption)

  $obj | add-member -membertype noteproperty -name ($id + "Drive Letter") -value($d.driveletter)

  $obj | add-member -membertype noteproperty -name ($id + "Label") -value($d.label)

  $obj | add-member -membertype noteproperty -name ($id + "Capacity") -value([string][int]($d.capacity/1073741824) + " GB")

  $obj | add-member -membertype noteproperty -name ($id + "Free Space") -value([string][int]($d.freespace/1073741824) + " GB")

  $obj | add-member -membertype noteproperty -name ($id + "Volume Type") -value(get-drvtype($d.drivetype))

  $obj | add-member -membertype noteproperty -name ($id + "Boot Volume") -value($d.bootvolume)

  $obj | add-member -membertype noteproperty -name ($id + "System Volume") -value($d.systemvolume)

  $obj | add-member -membertype noteproperty -name ($id + "Compressed") -value($d.compressed)

  $obj | add-member -membertype noteproperty -name ($id + "Serial Number") -value($d.serialnumber)

  $obj | add-member -membertype noteproperty -name ($id + "File System") -value($d.filesystem)

  $obj | add-member -membertype noteproperty -name ($id + "Block Size") -value($d.blocksize)

  $obj | add-member -membertype noteproperty -name ($id + "Indexing Enabled") -value($d.indexingenabled)

  $obj | add-member -membertype noteproperty -name ($id + "Auto Mount") -value($d.automount)

  $obj | add-member -membertype noteproperty -name ($id + "Dirty Bit Set") -value($d.dirtybitset)

}


$obj > $env:userprofile\desktop\DISKINFO.TXT


EXIT

EXIT


# ************************************************************

[/code]


Back
Top