Click here to Skip to main content
12,507,674 members (49,728 online)
Click here to Skip to main content
Add your own
alternative version


33 bookmarked

A Quick Guideline for Microsoft Windows PowerShell - Part 2

, 17 Aug 2010 CPOL
Rate this:
Please Sign up or sign in to vote.
The objective of this article (Part 2) is to introduce you to using of VB / Microsoft .NET library, Function, Methods as well in your Microsoft Windows PowerShell script.

Table of Contents

  • Introduction
  • Background
  • VB Script to PowerShell
    • Functions / Methods
  • Message to All Silver Members and Above
  • Conclusion
  • References
  • Point of interest
  • History


The VBA developer as well as VB Script writer are very much familiar with the use of mostly common built-in library or function, for example CInt(), CStr(), Abs()… etc. In this section, we will not discuss how to use this library or function in VB Script. We will discuss how we can convert and use library or function in Windows PowerShell.


So, our main objective of this article is to put all mostly used libraries or functions & their use in Windows PowerShell under a single article.

It is very important to know that Windows PowerShell doesn’t have built-in methods, but we can achieve this by using the .NET Framework library.


This article is a common place for all to participate with proper code snippets and full explanation.

VB Script to PowerShell

In this section, we will discuss how we can convert and use all the libraries or functions which are widely used in VB Script.

Functions / Methods

A list of functions / methods is given below:

Function / Methods Function / Methods Function / Methods Function / Methods
Abs() Cos()Split()LBound()
Asc() CSng()Eval()LCase()
CBool() CStr()Filter()Left()
CByte() Date()Hex()Len()
CCur() DateAdd()Hour()LTrim()
CDate() DateDiff()IsDate()RTrim()
CDbl() DatePart()IsEmpty()Mid()
Chr() DateSerial()IsNull()Minute()
CInt() DateValue()IsNumeric()Month()
CLng() Day()IsObject()MonthName()
  1. Abs(): Returns the absolute value of a number.


    $result = [math]::abs(-99) 

    Output: 99

  2. Asc(): Returns the ANSI character code corresponding to the first letter in a string.


    $result = [byte][char] "A"

    Output: 65

  3. CBool(): Returns an expression that has been converted to a Variant of subtype Boolean.


    $result = 0  // 0 is for false & 1 is for true
    $result = [bool] $result

    Output: False

  4. CByte(): Returns an expression that has been converted to a Variant of subtype Byte.


    $result = "99.45"
    $result = [byte] $result

    Output: 99

  5. CCur(): Returns an expression that has been converted to a Variant of subtype Currency.


    $result = "{0:C}" -f 100

    Output: $100.00

  6. CDate(): Returns an expression that has been converted to a Variant of subtype Date.


    $result = '17/08/2010'
    $result = [datetime]$result  
  7. CDbl(): Returns an expression that has been converted to a Variant of subtype Double.


    $result = "10.99"
    $result = [double]$result

    Output: 10.99

  8. Chr(): Returns the character associated with the specified ANSI character code.


    $result = [char]42 

    Output: *

  9. CInt(): Returns an expression that has been converted to a Variant of subtype Integer.


    $result = "99.96"
    $result = [int] $result  

    Output: 100

  10. CLng(): Returns an expression that has been converted to a Variant of subtype Long.


    $result = "123456789.45"
    $result = [long] $result

    Output: 123456789

  11. Date(): Returns the current system date.


    $result = get-date –format d

    Output: 1/2/2002

  12. Now(): Returns the current date and time according to the setting of your computer's system date and time.


    $result = get-date

    Output: Wednesday, January 02, 2002 1:32:08 AM

  13. Cos(): Returns the cosine of an angle.


    $result = [math]::cos(45)

    Output: 0.52532198881773

  14. CSng(): Returns an expression that has been converted to a Variant of subtype Single.


    $result = "99.45"
    $result =  [single] $result   

    Output: 99.45

  15. CStr(): Returns an expression that has been converted to a Variant of subtype String.


    $result = 99
    $result = [string] $result     

    Output: "99"

  16. DateAdd(): Returns a date to which a specified time interval has been added.
    Windows PowerShell you can determine that by using the Get-Date Cmdlet along with the appropriate method. For example, this command calculates the date 37 days from the current date (using the AddDays() method) and stores that value in the variable $result.


    $result = get-date
    $result = (get-date).AddDays(37)


    Wednesday, January 02, 2002 2:31:06 AM
    Friday, February 08, 2002 2:31:06 AM
  17. DateDiff(): Returns the number of intervals between two dates.

    $result = New-TimeSpan $(Get-Date) $(Get-Date –month 12 -day 31 
    	-year 2006 -hour 23 -minute 30)


    Days : 1824
    Hours : 20
    Minutes : 55
    Seconds : 0
    Milliseconds : 0
    Ticks : 1576689000000000
    TotalDays : 1824.87152777778
    TotalHours : 43796.9166666667
    TotalMinutes : 2627815
    TotalSeconds : 157668900
    TotalMilliseconds : 157668900000
  18. DatePart(): Returns the specified part of a given date.


    $result = (get-date).day
    $result = (get-date).dayofweek
    $result = (get-date).dayofyear
    $result = (get-date).hour
    $result = (get-date).millisecond
    $result = (get-date).minute
    $result = (get-date).month
    $result = (get-date).second
    $result = (get-date).timeofday
    $result = (get-date).year


    Days : 0
    Hours : 2
    Minutes : 41
    Seconds : 50
    Milliseconds : 953
    Ticks : 97109531250
    TotalDays : 0.112395290798611
    TotalHours : 2.69748697916667
    TotalMinutes : 161.84921875
    TotalSeconds : 9710.953125
    TotalMilliseconds : 9710953.125
  19. DateSerial(): Returns a Variant of subtype Date for a specified year, month, and day.


    $result = get-date -y 2010 -mo 12 -day 31

    Output: Friday, December 31, 2010 2:46:44 AM

  20. DateValue(): Returns a Variant of subtype Date.


    $result = [datetime] "12/1/2010"

    Output: Wednesday, December 01, 2010 12:00:00 AM

  21. Day(): Returns a whole number between 1 and 31, inclusive, representing the day of the month.


    $result = (get-date).day

    Output: 2

  22. Replace(): Returns a string in which a specified substring has been replaced with another substring a specified number of times.


    $result = "Hallo"
    $result = $result -replace("a","e")



Message to All Silver Members and Above

This Table of Contents and article are editable by all Silver members and above. What I want you to do is replace the entries in the Table of Contents, add as many as you are aware of on Windows PowerShell. This will really help beginners to find all of them under a single article.


  • Development Network


I hope that this might be helpful to you. Enjoy!


  • 17th August 2010: Initial post


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Md. Marufuzzaman
Bangladesh Bangladesh
A highly experienced leader with successful track record of software development, product innovations, brand management and corporate communication etc. Some successful product innovations have also achieved and awards “Most Valuable Professional” (MVP) at 2010 and 2011 by and also selected as a mentor of Published over 100 technical articles in various software development resource sites (i.e.,, Microsoft MSDN, and IEEE & IBM (In progress)) and various IT Forums, Blogs etc.

Over ten years of professional experiences in ICT field having extensive experience in formulating corporate vision and long term strategy. Leading development related functions including design, development, services, data management and analytics, customer experience management, content services, digital analytics and optimization.

An individual with results-driven approach and relentless in pursuit of excellence from a business and organizational standpoint. Believes in transparency, commitment and teamwork.

Expertise: Software/Solution Architect, SaaS platform base application, Large scale win32/web based business software solutions, enterprise applications, integration, etc.

Technologies/Tools: Microsoft.Net version 05/08/10/12, Microsoft SQL Server version 7/2K/05/08/12 , Oracle version 10/11, MySql version 5.1, 5.5, PS2, Visual C#, R, VB.NET, ASP.NET, PHP, API, MVC, WebAPI , Add-In Visual Basic etc.,. I have also more than two years’ of strong experience in mobile-VAS (platform development).

Points of Interest: Technology and research & development especially focused on business functionalities and social business areas as well, few stuff including:

1.R&D on new techniques as required to increase business revenue.
2.Urban and rural sectors to improve people’s lifestyle, better medical facilities, education, social business etc., using innovative technical solutions.
3.Research and innovative product development.

You may also be interested in...

Comments and Discussions

GeneralLinks to other parts please Pin
H. Gohel23-Aug-10 13:33
memberH. Gohel23-Aug-10 13:33 
GeneralRe: Links to other parts please Pin
Md. Marufuzzaman23-Aug-10 17:28
mvpMd. Marufuzzaman23-Aug-10 17:28 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.160927.1 | Last Updated 18 Aug 2010
Article Copyright 2010 by Md. Marufuzzaman
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid