Powershelliä UNIX-ylläpitäjille, osa 10
Windowsin käynnistyviin ohjelma- ja kirjastotiedostoihin liittyy paljon erilaista metatietoa, esimerkiksi ohjelman versionumero, julkaisija yms. Näiden metatietojen tarkastelu on toisinaan hyödyllistä, etenkin ohjelmistoja testattaessa. Alla OpenVPN:n bin -kansion sisältö kokonaisuudessaan:
PS C:Program FilesOpenVPNbin> Get-ChildItem
Directory: C:Program FilesOpenVPNbin
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 7.3.2016 16:40 1753440 libeay32.dll
-a--- 7.3.2016 16:40 226432 liblzo2-2.dll
-a--- 7.3.2016 16:40 123000 libpkcs11-helper-1.dll
-a--- 7.3.2016 16:40 465760 openvpn-gui.exe
-a--- 7.3.2016 16:40 965984 openvpn.exe
-a--- 7.3.2016 16:40 65888 openvpnserv.exe
-a--- 7.3.2016 16:40 396640 ssleay32.dll
Metatiedot on tallennettu tiedosto-objektin VersionInfo-parametriin - alla tarkastellaan openvpn.exe -tiedoston metatietoja:
PS C:Program FilesOpenVPNbin> (Get-ChildItem openvpn.exe).VersionInfo|fl
OriginalFilename : openvpn.exe
FileDescription : OpenVPN Daemon
ProductName : OpenVPN
Comments :
CompanyName : The OpenVPN Project
FileName : C:Program FilesOpenVPNbinopenvpn.exe
FileVersion : 2.3_guipr18and26.0
ProductVersion : 2.3_guipr18and26.0
IsDebug : False
IsPatched : False
IsPreRelease : False
IsPrivateBuild : False
IsSpecialBuild : False
Language : englanti (Yhdysvallat)
LegalCopyright : Copyright © The OpenVPN Project
LegalTrademarks :
PrivateBuild :
SpecialBuild :
Yllä komento Get-ChildItem tarvitaan openvpn.exe:n muuntamiseksi Powershell-objektiksi.
Metatietojen lisäksi Powershellillä on mahdollista tarkistaa ohjelmien digitaaliset allekirjoitukset (Authenticoode signature). Tähän tarkoitukseen käytetään Get-AuthenticodeSignature CmdLetiä:
PS C:Program FilesOpenVPNbin> Get-AuthenticodeSignature *.exe
Directory: C:Program FilesOpenVPNbin
SignerCertificate Status Path
----------------- ------ ----
5E66E0CA2367757E800E65B770629026E131A7DC Valid openvpn-gui.exe
5E66E0CA2367757E800E65B770629026E131A7DC Valid openvpn.exe
5E66E0CA2367757E800E65B770629026E131A7DC Valid openvpnserv.exe
Digitaalisten allekirjoitusten kanssa Windows on nykyisellään kovin tarkka, joten tälle CmdLetille tulee varmasti tulevaisuudessa käyttöä.