Scripting

PowerShell – ProperCase Function

Change any case to Proper Case (‘ITNOTES DoT net’ to ‘Itnotes Dot Net’):
This is very useful for us during scripted user creations when the usernames and such from the source were in random cases. This script could also be useful with auto user provisioning with ILM from another datasource, we currently us a VBScript that is much longer.

This script basically converts everything to lowercase the capitalizes the first letter of each word.

?View Code POWERSHELL
function ToProperCase ([String]$in)
{
 $in = $in.Tolower()
 $textInfo = [System.Threading.Thread]::CurrentThread.CurrentCulture.TextInfo  
 return $textInfo.ToTitleCase($in)
}

Example of use

?View Code POWERSHELL
$Title = "ITNOTE DOT NET"
$Title = ToProperCase($Title)

Returns:

Itnotes Dot Net

Complete Script

?View Code POWERSHELL
function ToProperCase ([String]$in)
{
 $in = $in.Tolower()
 $textInfo = [System.Threading.Thread]::CurrentThread.CurrentCulture.TextInfo  
 return $textInfo.ToTitleCase($in)
$Title = "ITNOTE DOT NET"
$Title = ToProperCase($Title)

Tags: , ,

Monday, March 1st, 2010 Identity Management, Powershell No Comments

Re-Usable VBScript Functions – Part I

In this Multi-Part Series I will post lists on VBScript Functions and Subs that I have either found or written. I am a big fan of turning any useful code into a functions and adding it to my default VBScript Template, it saves a ton of time on the next scripting task. By no means am I claiming I wrote all of  these, most were just re-purposed into reusable functions. I hope you find these useful. In the later part of the series I will include my template I use to begin all my scripts.

Determine if the computer is a laptop:

?View Code VBSCRIPT
Function IsLaptop(strComputer)
    On Error Resume Next
    Set objWMIService = GetObject( "winmgmts://" & strComputer & "/root/cimv2" )
    Set colItems = objWMIService.ExecQuery( "Select * from Win32_Battery", , 48 )
    IsLaptop = False
    For Each objItem in colItems
        IsLaptop = True
    Next
    If Err Then Err.Clear
    On Error GoTo 0
End Function

Example of use

?View Code VBSCRIPT
If IsLaptop( "." ) Then
    WScript.Echo "Laptop
Else
    WScript.Echo "Desktop or server
End If


Shell out a command line with switches:

?View Code VBSCRIPT
Sub RunSwch(ByVal strRunCmd, strRunSwitch)
Dim objWshShell
    Set objWshShell = CreateObject("WScript.Shell")
    objWshShell.Run Chr(34) & strRunCmd & Chr(34)& " " & strRunSwitch, 1, True
    Set objWshShell = Nothing
End Sub

Example of use

?View Code VBSCRIPT
RunSwch "C:\Program Files\ApplicationX\Start.exe","/S /X /Log C:\log.log"


Shell out a command line without switches:

?View Code VBSCRIPT
Sub Run(ByVal strRunCmd)
Dim objWshShell
    Set objWshShell = CreateObject("WScript.Shell")
    objWshShell.Run Chr(34) & strRunCmd & Chr(34), 1, True
    Set objWshShell = Nothing
End Sub

Example of use

?View Code VBSCRIPT
Run "C:\Program Files\ApplicationX\Start.exe"

Tags: , ,

Thursday, October 15th, 2009 VBScript No Comments

PowerShell 2.0 Release Candidate for Windows XP SP3 and Server 2003 SP2

Finally we see a release candidate for Windows XP, but you must have SP3 installed.

Download here: https://connect.microsoft.com/windowsmanagement/Downloads

Tags: ,

Monday, September 14th, 2009 Powershell No Comments

PowerShell 2.0 Release Candidate for Windows Vista and Server 2008

Still waiting for PowerShell 2.0 for Windows XP and Server 2003, but this is a good start.

Read more from the source: http://blogs.msdn.com/powershell/archive/2009/08/14/powershell-2-0-for-windows-vista-and-windows-server-2008-release-candidate.aspx

Download here: https://connect.microsoft.com/windowsmanagement/Downloads

 

Tags: , ,

Friday, August 14th, 2009 Scripting 1 Comment