Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Windows Server 2012 Automation with PowerShell Cookbook
  • Table Of Contents Toc
Windows Server 2012 Automation with PowerShell Cookbook

Windows Server 2012 Automation with PowerShell Cookbook

By : EDRICK GOAD
4.3 (11)
close
close
Windows Server 2012 Automation with PowerShell Cookbook

Windows Server 2012 Automation with PowerShell Cookbook

4.3 (11)
By: EDRICK GOAD

Overview of this book

Automating server tasks allows administrators to repeatedly perform the same, or similar, tasks over and over again. With PowerShell scripts, you can automate server tasks and reduce manual input, allowing you to focus on more important tasks. Windows Server 2012 Automation with PowerShell Cookbook will show several ways for a Windows administrator to automate and streamline his/her job. Learn how to automate server tasks to ease your day-to-day operations, generate performance and configuration reports, and troubleshoot and resolve critical problems. Windows Server 2012 Automation with PowerShell Cookbook will introduce you to the advantages of using Windows Server 2012 and PowerShell. Each recipe is a building block that can easily be combined to provide larger and more useful scripts to automate your systems. The recipes are packed with examples and real world experience to make the job of managing and administrating Windows servers easier. The book begins with automation of common Windows Networking components such as AD, DHCP, DNS, and PKI, managing Hyper-V, and backing up the server environment. By the end of the book you will be able to use PowerShell scripts to automate tasks such as performance monitoring, reporting, analyzing the environment to match best practices, and troubleshooting.
Table of Contents (19 chapters)
close
close
Windows Server 2012 Automation with PowerShell Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
1
Index

Using formatting to export data views


One of the great things about PowerShell is that it gives you access to lots of information. However, this plethora of information can be a downside of PowerShell if it is not the exact information or type of information you are looking for. In previous chapters, we saw how to filter and format data; in this chapter, we will review different methods to format data to provide the information in a way that is usable to us.

How to do it...

Carry out the following steps:

  1. Using Get-Process to list all running Chrome processes

    Get-Process chrome 
  2. To list all available attributes for our processes, execute the following code:

    Get-Process chrome | Select-Object * 
  3. To return a select list of attributes, update the following command:

    Get-Process chrome | `
    Select-Object Name, Handles, Threads, `
    NonpagedSystemMemorySize, PagedMemorySize, `
    VirtualMemorySize, WorkingSet, `
    PrivilegedProcessorTime, UserProcessorTime, `
    TotalProcessorTime 

    Note

    Note the use of the backtick character at the end of all but the last line. This tells PowerShell to include the contents of the lines as a single line. This allows us to more easily format the script for readability.

  4. Combine the values of different attributes to provide more usable information

    Get-Process chrome | `
    Select-Object Name, Handles, Threads, `
    NonpagedSystemMemorySize, PagedMemorySize, `
    VirtualMemorySize, WorkingSet, `
    PrivilegedProcessorTime, UserProcessorTime, `
    TotalProcessorTime, `
    @{Name="Total Memory";Expression=`
    {$_.NonpagedSystemMemorySize + `
    $_.PagedMemorySize + $_.VirtualMemorySize + `
    $_.WorkingSet}} 
  5. Use formatting to return the values in a human readable format.

    Get-Process chrome | `
    Select-Object Name, Handles, Threads, `
    NonpagedSystemMemorySize, PagedMemorySize, `
    VirtualMemorySize, WorkingSet, `
    PrivilegedProcessorTime, UserProcessorTime, `
    TotalProcessorTime, `
    @{Name="Total Memory (M)";Expression=`
    {"{0:N2}" -f (($_.NonpagedSystemMemorySize + `
    $_.PagedMemorySize + $_.VirtualMemorySize + `
    $_.WorkingSet)/1MB)}}   

How it works...

In the first step, we simply execute Get-Process to return all running processes named chrome. This command returns basic process information such as the number of handles, the amount of memory resources, and the amount of CPU resources used by each process.

In the second step, we do the same as before, but this time telling the command to return all attributes for the processes. Dozens of attributes are returned, including details about the executable, threads, debugging information, and even when the process was started. Most importantly, this returns all available attributes for the process, thus allowing us to determine which attributes we are interested in returning in future queries.

The third step identifies specific attributes to return from the running processes. Any available process attribute can be included here in addition to or instead of the memory related attributes shown here.

The fourth step uses an expression to create a calculated result. In this situation, we create a calculated column named Total Memory and add several of the memory related attributes together. Most mathematical functions such as multiplication and subtraction, and most textual commands such as append or replace, can be used as well.

The final step adds numeric formatting to the calculated column to make it more readable to the user. Two types of formatting are performed here:

  • The result is divided by 1 MB (or X / 1,048,576) to present the number in megabytes instead of bytes

  • Formatting is applied to limit the resulting number to two decimal places

Visually different images
CONTINUE READING
83
Tech Concepts
36
Programming languages
73
Tech Tools
Icon Unlimited access to the largest independent learning library in tech of over 8,000 expert-authored tech books and videos.
Icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Icon 50+ new titles added per month and exclusive early access to books as they are being written.
Windows Server 2012 Automation with PowerShell Cookbook
notes
bookmark Notes and Bookmarks search Search in title playlist Add to playlist font-size Font size

Change the font size

margin-width Margin width

Change margin width

day-mode Day/Sepia/Night Modes

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY

Submit Your Feedback

Modal Close icon
Modal Close icon
Modal Close icon