2009-09-23

Powershell & Get-HashFile

Avendo la necessità di calcolare l'hash di un file all'interno di uno script Powershell, mi sono preparato questa piccola funzione che fa al caso mio:

function Get-HashFile([System.IO.FileInfo[]] $file)
{    
        if (($file.Count -le 0) )
        {
            #Write-Host "NA"
            return $null             
        }
        
        [object[]] $out = New-Object object[] $file.Length
        
        for($z = 0; $z -lt $file.Length; $z++)
        {
            #Write-Host $file[$z].FullName
            [System.Security.Cryptography.SHA1Managed] $hashAlg = New-Object System.Security.Cryptography.SHA1Managed
            $str = New-Object System.IO.FileStream $file[$z].FullName, Open, Read
            [byte[]] $hash = $hashAlg.ComputeHash($str)
            #$out[$z] =  [System.BitConverter]::ToString($hash)
            $out[$z] = @{File=$file[$z]; FileHash=[System.BitConverter]::ToString($hash)}
            $str.Close()
            $str.Dispose()
        }
        return $out
}


$myFile = Get-Item c:\tmp\_Varie_\_Working\*.*
$test = Get-HashFile($myFile)
foreach($i in $test) {$i}

Le flessibilità e la potenzialità offerte dalla Powershell sono (come sempre) semplicemente fantastiche!a

2009-05-19

Microsoft Story

Su http://channel9.msdn.com/ è disponibile una serie di documentari, di una 10ina di minuti l'uno, che raccontano anno dopo anno la storia della Microsoft. Si parte dal 1975 sino ad arrivare ai nostri giorni. Siamo al 1989 e settimanalmente (più o meno) viene rilasciato un video.

interessante...

http://channel9.msdn.com/shows/History/

2009-05-11

Monitoring utilizzo oggetti SQL Server

Tenere in ordine gli oggetti presenti in un database, avendo cura periodicamente di eliminare tabelle, viste o procedure / funzioni non più utili, è da sempre un operazione un po critica e in alcuni casi anche abbastanza fastidiosa. Qualche giorno fa mi è stato chiesto di gestire una situazione molto simile alla suddetta. Era arrivato il momento di fare pulizia su uno dei database di supporto più grossi. Obbiettivo eliminare oggetti non più utilizzati e fare un censimento di quelli ancora utilizzati (per un eventuale aggiornamento).
Serviva monitorare l'utilizzo del suddetto database, procurando il meno "fastidio" possibile agli utenti.
Il Profiler in questi casi torna davvero utile.

2009-03-25

Libro consigliato

E da un po che non scrivo... in questo periodo tra la facoltà e il lavoro, il tempo si è ridotto notevolmente. Nel tempo "forzatamente libero" offertomi dalle Ferrovie Nord Milano che puntualmente sono in ritardo, sto avendo modo di leggere con molto interesse questo libro:
Il Lato Oscuro della Rete di N. Carr.

Argomento centrale è la rete e le sue future possibili evoluzioni sia dal punto di vista prettamente informatico, sia dal punto vista sociale.

Il taglio è "giornalistico", scorrevole e piacevole e fatta eccezione le poche volte che l'autore si fa prendere da un certo pessimismo cosmico, rimane una lettura che comunque consiglio caldamente.

Alla prossima!