Lab: Windows Administration: Module 2: Cmdlets For Administration
Lab: Windows Administration: Module 2: Cmdlets For Administration
Lab: Windows Administration: Module 2: Cmdlets For Administration
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
2. In the search results, right-click Windows PowerShell, and then click Run as administrator.
3. In the Administrator: Windows PowerShell window, type the following command, and then press Enter:
New-ADOrganizationalUnit -Name London
Task 4: Move the group, user, and computer accounts to the branch office OU
1. In the console, type the following command, and then press Enter:
Move-ADObject -Identity “CN=London Admins,CN=Users,DC=Adatum,DC=com” –TargetPath
“OU=London,DC=Adatum,DC=com”
2. Right-click the Start button, and then select Windows PowerShell (Admin).
3. In the Administrator: Windows PowerShell window, type the following command, and then press Enter:
Test-Connection LON-DC1
Note: Note the speed of the connection so that you can compare it to the speed after you make changes.
4. In the console, type the following command, and then press Enter:
Get-NetIPConfiguration
Note: Note the IP address, default gateway and Domain Name System (DNS) server.
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
Task 3: Change the DNS settings and default gateway for the server
1. In the Administrator: Windows PowerShell window, type the following command, and then press Enter:
Set-DnsClientServerAddress -InterfaceAlias Ethernet -ServerAddress 172.16.0.12
2. In the console, type the following command, and then press Enter:
Remove-NetRoute -InterfaceAlias Ethernet -DestinationPrefix 0.0.0.0/0 -Confirm:$false
3. In the console window, type the following command, and then press Enter:
New-NetRoute -InterfaceAlias Ethernet -DestinationPrefix 0.0.0.0/0 –NextHop 172.16.0.2
1. On LON-SVR1, in the Administrator: Windows PowerShell window, type the following command, and then
press Enter:
Get-NetIPConfiguration
2. In the console, type the following command, and then press Enter:
Test-Connection LON-DC1
Results: After completing this exercise, you will have successfully identified and used Windows PowerShell
commands for managing network configuration.
Note: Internet Explorer displays an error message. The error message details give the physical path of the site, which
should be C:\inetpub\wwwroot\london.
Results: After completing this exercise, you will have successfully identified and used Windows PowerShell
commands that would be used as part of a standardized Web server configuration.
2. In the Virtual Machines list, right-click 10961C-LON-DC1, and then click Revert.
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
2. In the search results, right-click Windows PowerShell, and then click Run as administrator.
3. In the Administrator: Windows PowerShell window, type the following command, and then press
Enter:
help *date*
Note: Notice the Get-Date command.
4. In the console, type the following command, and then press Enter:
Get-Date | Get-Member
5. In the console, type the following command, and then press Enter:
Get-Date | Select-Object –Property DayOfYear
6. In the console, type the following command, and then press Enter:
Get-Date | Select-Object -Property DayOfYear | fl
2. In the console, type the following command, and then press Enter:
Get-Hotfix | Get-Member
Note: The properties of the Hotfix object display. If needed, run Get-Hotfix to see some of the values that
typically appear in those properties.
3. In the console, type the following command, and then press Enter:
Get-Hotfix | Select-Object –Property HotFixID,InstalledOn,InstalledBy
4. In the console, type the following command, and then press Enter:
Get-Hotfix | Select-Object –Property HotFixID,@{n='HotFixAge';e={(New-TimeSpan -Start
$PSItem.InstalledOn).Days}},InstalledBy
1. In the console, type the following command, and then press Enter:
help *scope*
2. In the console, type the following command, and then press Enter:
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
3. In the console, type the following command, and then press Enter:
Get-DHCPServerv4Scope –ComputerName LON-DC1
4. In the console, type the following command, and then press Enter:
Get-DHCPServerv4Scope –ComputerName LON-DC1 | Select-Object –Property
ScopeId,SubnetMask,Name | fl
2. In the console, type the following command, and then press Enter:
Get-NetFirewallRule
3. In the console, type the following command, and then press Enter:
Help Get-NetFirewallRule –ShowWindow
4. In the console, type the following command, and then press Enter:
Get-NetFirewallRule –Enabled True
5. In the console, type the following command, and then press Enter:
Get-NetFirewallRule –Enabled True | Format-Table -wrap
6. In the console, type the following command, and then press Enter:
Get-NetFirewallRule –Enabled True | Select-Object –Property
DisplayName,Profile,Direction,Action | Sort-Object –Property Profile, DisplayName |
ft -GroupBy Profile
2. In the console, type the following command, and then press Enter:
help Get-NetNeighbor –ShowWindow
3. In the console, type the following command, and then press Enter:
Get-NetNeighbor
4. In the console, type the following command, and then press Enter:
Get-NetNeighbor | Sort-Object –Property State
5. In the console, type the following command, and then press Enter:
Get-NetNeighbor | Sort-Object –Property State | Select-Object –Property
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
1. In the console, type the following command, and then press Enter:
Test-NetConnection LON-DC1
2. In the console, type the following command, and then press Enter:
Test-NetConnection LON-CL1
3. In the console, type the following command, and then press Enter:
help *cache*
4. In the console, type the following command, and then press Enter:
Get-DnsClientCache
5. In the console, type the following command, and then press Enter:
Get-DnsClientCache | Select Name,Type,TimeToLive | Sort Name | Format-List
Note: Notice that the Type data does not return what you might expect—for example, A and CNAME.
Instead, it returns raw numerical data. Each number maps directly to a record type, and you can filter for
those types when you know the map: 1= A, 5 = CNAME, and so on. Later in this module, you will learn
how to add more filters to determine the numbers and their corresponding record types. You will notice a
similar situation for other returned data, such as Status data.
Results: After completing this exercise, you should have produced several custom reports that contain
management information from your environment.
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
2. In the search results, right-click Windows PowerShell, and then click Run as administrator.
3. In the Administrator: Windows PowerShell window, type the following command, and then press
Enter:
help *user*
Note: Notice that the -Filter parameter is mandatory. Review the examples for the command.
5. In the console, type the following command, and then press Enter:
Get-ADUser –Filter * | ft
6. In the console, type the following command, and then press Enter:
Get-ADUser –Filter * -SearchBase "cn=Users,dc=Adatum,dc=com" | ft
Task 2: Create a report showing the Security event log entries that have the event ID 4624
1. In the console, type the following command, and then press Enter:
Get-EventLog -LogName Security |
Where EventID -eq 4624 | Measure-Object | fw
2. In the console, type the following command, and then press Enter:
Get-EventLog -LogName Security |
Where EventID -eq 4624 |
Select TimeWritten,EventID,Message
3. In the console, type the following command, and then press Enter:
Get-EventLog -LogName Security |
Where EventID -eq 4624 |
Select TimeWritten,EventID,Message -Last 10 | fl
2. To display the members of the objects, type the following command, and then press Enter:
Get-ChildItem -Path CERT: -Recurse | Get-Member
3. In the console, type one of the following commands, and then press Enter:
Get-ChildItem -Path CERT: -Recurse |
Where HasPrivateKey -eq $False | Select-Object -Property FriendlyName,Issuer | fl
or:
Get-ChildItem -Path CERT: -Recurse |
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
4. In the console, type the following command, and then press Enter:
Get-ChildItem -Path CERT: -Recurse |
Where { $PSItem.HasPrivateKey -eq $False -and $PSItem.NotAfter -gt (Get-Date) -and
$PSItem.NotBefore -lt (Get-Date) } | Select-Object -Property NotBefore,NotAfter,
FriendlyName,Issuer | ft -wrap
Task 4: Create a report that shows the disk volumes that are running low on space
1. In the console, type the following command, and then press Enter:
Get-Volume
Note: If you did not know the command name, you could have run Help *volume* to discover it.
2. In the console, type the following command, and then press Enter:
Get-Volume | Get-Member
3. In the console, type the following command, and then press Enter:
Get-Volume | Where-Object { $PSItem.SizeRemaining -gt 0 } | fl
4. In the console, type the following command, and then press Enter:
Get-Volume | Where-Object { $PSItem.SizeRemaining -gt 0 -and $PSItem.SizeRemaining /
$PSItem.Size -lt .99 }| Select-Object DriveLetter, @{n='Size';e={'{0:N2}' -f
($PSItem.Size/1MB)}}
5. In the console, type the following command, and then press Enter:
Get-Volume | Where-Object { $PSItem.SizeRemaining -gt 0 -and $PSItem.SizeRemaining /
$PSItem.Size -lt .1 }
Note: This command might not produce any output on your lab computer if the computer has more than 10
percent free space on each of its volumes.
2. In the console, type the following command, and then press Enter:
Get-ControlPanelItem
3. In the console, type the following command, and then press Enter:
Get-ControlPanelItem –Category 'System and Security' | Sort Name
4. In the console, type the following command, and then press Enter:
Get-ControlPanelItem -Category 'System and Security' | Where-Object -FilterScript {-
not ($PSItem.Category -notlike '*System and Security*')} | Sort Name
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
Results: After completing this exercise, you should have used filtering to produce lists of management
information that include only specified data and elements.
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
2. In the search results, right-click Windows PowerShell, and then click Run as administrator.
3. In the Administrator: Windows PowerShell window, type the following command, and then press
Enter:
Get-ChildItem -Path E: -Recurse
4. In the console, type the following command, and then press Enter:
Get-ChildItem -Path E: -Recurse | Get-Member
Note: Notice the GetFiles method in the list under TypeName: System.IO.DirectoryInfo.
5. In the console, type the following command, and then press Enter:
Get-ChildItem -Path E: -Recurse | ForEach GetFiles
2. In the console, type the following command, and then press Enter:
help Get-Random –ShowWindow
3. In the console, type the following command, and then press Enter:
1..100
4. In the console, type the following command, and then press Enter:
1..100 |
ForEach { Get-Random –SetSeed $PSItem }
2. In the console, type the following command, and then press Enter:
Get-WmiObject –Class Win32_OperatingSystem -EnableAllPrivileges
3. In the console, type the following command, and then press Enter:
Get-WmiObject –Class Win32_OperatingSystem -EnableAllPrivileges | Get-Member
Note: The following command will reboot the machine you run it on.
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
4. In the console, type the following command, and then press Enter:
Get-WmiObject –Class Win32_OperatingSystem -EnableAllPrivileges | ForEach Reboot
Results: After completing this exercise, you should have written commands that manipulate multiple objects
in the pipeline.
3. In the search results, right-click Windows PowerShell, and then click Run as administrator.
4. In the Administrator: Windows PowerShell window, type the following command, and then press
Enter:
Get-ADUser -Filter * -Properties Department,City | Where {$PSItem.Department -eq ‘IT’
-and $PSItem.City -eq ‘London’} | Select-Object -Property Name,Department,City| Sort Name
5. In the Administrator: Windows PowerShell window, type the following command, and then press
Enter:
Get-ADUser -Filter * -Properties Department,City | Where {$PSItem.Department -eq ‘IT’
-and $PSItem.City -eq ‘London’} | Set-ADUser -Office ‘LON-A/1000’
6. In the Administrator: Windows PowerShell window, type the following command, and then press
Enter:
Get-ADUser -Filter * -Properties Department,City,Office | Where {$PSItem.Department -
eq ‘IT’ -and $PSItem.City -eq ‘London’} | Select-Object -Property
Name,Department,City,Office | Sort Name
Task 2: Produce an HTML report listing the Active Directory users in the IT department
1. In the console, type the following command, and then press Enter:
help ConvertTo-Html –ShowWindow
2. In the console, type the following command, and then press Enter:
Get-ADUser -Filter * -Properties Department,City,Office |
Where {$PSItem.Department -eq ‘IT’ -and $PSItem.City -eq ‘London’} |
Sort Name |
Select-Object -Property Name,Department,City,Office |
ConvertTo-Html –Property Name,Department,City -PreContent Users |
Out-File E:\UserReport.html
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell
10-961C Automating Administration With
Windows PowerShell
Mod 01 Overview and background of Windows PowerShell
Mod 02 Cmdlets for administration
3. To view the HTML file, type the following command, and then press Enter:
Invoke-Expression E:\UserReport.html
4. In the console, type the following command, and then press Enter:
Get-ADUser -Filter * -Properties Department,City,Office | Where {$PSItem.Department -eq ‘IT’ -and
$PSItem.City -eq ‘London’} | Sort Name | Select-Object -Property Name,Department,City,Office | Export-
Clixml E:\UserReport.xml
5. In Internet Explorer, in the address bar, type E:\UserReport.xml, and then press Enter.
6. In the console, type the following command, and then press Enter:
Get-ADUser -Filter * -Properties Department,City,Office | Where {$PSItem.Department -eq ‘IT’ -and
$PSItem.City -eq ‘London’} | Sort Name | Select-Object -Property Name,Department,City,Office | Export-
Csv E:\UserReport.csv
7. In File Explorer, go to E:\, right-click UserReport.csv, click Open with, and then click Notepad.
Results:
After completing this exercise, you should have converted Active Directory user objects to different data
formats.
2. In the Virtual Machines list, right-click 10961C-LON-DC1, and then click Revert.
_______________________________________________________________________________________________
10-961C Automating Administration With Windows PowerShell