help with powershell script.

Posted on 2015-02-03
Last Modified: 2016-09-07
Could you please help with the powershell script. It doesn't give me any error and doesnt run.

Here is the script.

When I run it, this is what I get

PS C:\Script-GPOStatus> .\Get-GPStatus.ps1

PS C:\Script-GPOStatus> $Env:USERPROFILE\Desktop\Get-GPStatus.ps1
At line:1 char:17
+ $Env:USERPROFILE\Desktop\Get-GPStatus.ps1
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~
Unexpected token '\Desktop\Get-GPStatus.ps1' in expression or statement.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : UnexpectedToken
Question by:creative555
  • 7
  • 3
  • 2
  • +1

Author Comment

ID: 40587360
I dont understand the instructions provided....not sure what I need to specify and where in order to run it.

Thank you

Author Comment

ID: 40587369
This is not working: Do I need to put the name of my profile??

Load function stored on user desktop, get group policy status over the forest and record in a variable, export variable to csv file.

Expert Comment

by:Benjamin MOREAU
ID: 40587370
try to run :


Expert Comment

by:Benjamin MOREAU
ID: 40587385
otherwise, just open powershell console, browse directory et run :

LVL 40

Expert Comment

ID: 40587449
Script is written as a module. Save code to desktop folder and then you can import the module using following command..
Import-Module '$Env:USERPROFILE\Desktop\Get-GPStatus.ps1'

Open in new window

Once you complete the import you can use the commands shown in the example of the article..

Get-GPStatus 'MyDomainFQDN'

Open in new window


Author Comment

ID: 40588013
ok. that worked. but the excel  file that I received by running this command did not give me a good output.
$GPStatus = Get-GPStatus '' | Export-Csv -Path "$Env:USERPROFILE\Desktop\GPStatus5.csv" -Delimiter ';' –NoTypeInformation

But I received the output on the screen: Is there any other command I should run in order toget the list of GPOs such as empty ones, orphans, etc?


Preparing status record of Group Policy(ies) linked on Site(s) and Domain(s) listed below:
=> 391 Group Policy(ies) linked
Checking Link options : enabled, enforced, disabled
Preparing status record of Group Policy(ies) not linked on Site(s) or Domain(s) listed below but stored in the latter:

=> 25 Group Policy(ies) not linked
Adding status record(s) considering orphaned Group Policy Directory(ies)
=> 26 orphaned Directory(ies)
Checking Sysvol status:
- selecting Domain Controller to query
- Network Drive "Sysvol_0" on "\\server.domain\SYSVOL\\Policies" already mounted
- checking Directory, Folder(s) and Setting(s) existence
- updating Sysvol status considering NTFRS conflict(s)
=> 16 NTFRS conflict(s)
Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.


Author Comment

ID: 40588017
oh. so I have to use each command from this script? The script is not going to run all the commands?

I also need to group them.....The excel file looks bad. It is not grouped and has bad results. Could you please help me with the command to select and group them so that I have for example list of empty GPOs, list of unlinked GPos, etc.

THank you so much!!

Author Comment

ID: 40588057
This script only shows on the screen the following below but doesn't identify which 26 Group Policies are not linked and what 53 orphaned directories are....Please help with running this script

=> 26 Group Policy(ies) not linked
Adding status record(s) considering orphaned Group Policy Directory(ies)
=> 53 orphaned Directory(ies)
LVL 40

Expert Comment

ID: 40588304
You need to filter the results of Get-GPStatus cmdlet to get required result..
$GPStatus = Get-GPStatus ''
$GPStatus | ? { !($_.existsInPolicies) -and ($_.enabledOn -or $_.enforcedOn -or $_.disabledOn) } | Export-csv  "C:\orphaned_grouppolicy_links.csv" -nti
$GPStatus | ? { !($_.existsInPolicies) -and $_.sysvol -ne 'no_Directory' }  | Export-csv  "C:\ orphaned_GroupPolicy_Directory.csv" -nti

Open in new window


Author Comment

ID: 40589054
Do I need to copy and paste one line by one into the powershell? Or I can copy three rows and paste it?
LVL 40

Accepted Solution

Subsun earned 500 total points
ID: 40589059
Either way it will work.. Make sure you import the module first and then run these commands..

Author Closing Comment

ID: 40602154
THank you so much!! Script worked like you said

Expert Comment

by:Senior IT System Engineer
ID: 41788947
OK creative555, so does the script only list the GPO not doing anything to the existing production GPO ?

Featured Post

Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
A procedure for exporting installed hotfix details of remote computers using powershell
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.

912 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

23 Experts available now in Live!

Get 1:1 Help Now