?
Solved

Delete Msol groups from csv file

Posted on 2016-10-04
6
Medium Priority
?
88 Views
Last Modified: 2016-10-04
I'm migrating all our distribution Groups that are managed from our on premises exchange server, to O365, but we are having issues with the Sync , so , some groups are not syncing correctly with O365 and are not been deleted. I need to delete then completely to re-create them later.
The only command that seems to work for me now is:
Get-MsolGroup -SearchString "Group Name" | ft *name,objectId
And then copy the object ID and do:
Remove-MsolGroup -ObjectId   xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
I'm trying to use something like the following but is not working:
Import-CSV C:\Path\DGtodelete.csv |ForEach {Get-MsolGroup -SearchString $._Name | select *name,objectId} | Export-Csv C:\Path\objectId.csv -NoTypeInformation       ### it gives me errors
Import-CSV C:\path\DGtodelete.csv | ForEach {Remove-MsolGroup -ObjectId $._ObjectId}        #### also errors
Please , help me to to have this working
Thanks,
0
Comment
Question by:Ernesto Gallardo
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
6 Comments
 
LVL 40

Accepted Solution

by:
Subsun earned 2000 total points
ID: 41828413
It could be the syntax error.. $._ObjectId will give error..  $_.ObjectId should correct it
Import-CSV C:\Path\DGtodelete.csv |ForEach {Get-MsolGroup -SearchString $_.Name | select name,objectId} | Export-Csv C:\Path\objectId.csv -NoTypeInformation

Import-CSV C:\path\DGtodelete.csv | ForEach {Remove-MsolGroup -ObjectId $_.ObjectId}

Open in new window

1
 

Author Comment

by:Ernesto Gallardo
ID: 41828465
Thank you very much for your help. For the first one it worked perfectly , It created the objectId.csv file with the objectId for every DG in DGtodelete.csv. So when i run the second one :

Import-CSV C:\Cygwin\DGtodelete.csv | ForEach {Remove-MsolGroup -ObjectId $_.ObjectId}

 I get this error:

Remove-MsolGroup : Cannot bind parameter 'ObjectId'. Cannot convert value "" to type "System.Guid". Error: "Unrecognized Guid format."
At line:1 char:75
+ ... win\DGtodelete.csv | ForEach {Remove-MsolGroup -ObjectId $_.ObjectId}
+                                                              ~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Remove-MsolGroup], ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.Online.Administration.Automation.RemoveGroup
 And i don't understand why, it is supposed to be very simple cause if you do it one by one:

Remove-MsolGroup -ObjectId xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx   ...It works fine
 Any thoughts,
Thanks again
0
 
LVL 40

Expert Comment

by:Subsun
ID: 41828478
If the input csv file displays correct GUID then try..
Import-CSV C:\path\DGtodelete.csv | ForEach {$GUID = [GUID]$_.ObjectId ; Remove-MsolGroup -ObjectId $GUID}

Open in new window

1
Visualize your virtual and backup environments

Create well-organized and polished visualizations of your virtual and backup environments when planning VMware vSphere, Microsoft Hyper-V or Veeam deployments. It helps you to gain better visibility and valuable business insights.

 

Author Comment

by:Ernesto Gallardo
ID: 41828519
Ohh Yes, it worked perfectly. Thank you so much for your help.  the only thing was change the file name to objectId.csv  ..
Thanks again
0
 

Author Comment

by:Ernesto Gallardo
ID: 41828525
You have just saved me a lot of time and effort
0
 
LVL 40

Expert Comment

by:Subsun
ID: 41828590
You are welcome!, Don't forget to close the question! :-)
0

Featured Post

Get your Disaster Recovery as a Service basics

Disaster Recovery as a Service is one go-to solution that revolutionizes DR planning. Implementing DRaaS could be an efficient process, easily accessible to non-DR experts. Learn about monitoring, testing, executing failovers and failbacks to ensure a "healthy" DR environment.

Question has a verified solution.

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

A recent project that involved parsing Tableau Desktop and Server log files to extract reusable user queries for use in other systems. I chose to use PowerShell to gather the data, and SharePoint to present it...
Unified and professional email signatures help maintain a consistent company brand image to the outside world. This article shows how to create an email signature in Exchange Server 2010 using a transport rule and how to overcome native limitations …
In this video we show how to create a Contact in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Recipients >> Contact ta…
In this video we show how to create an email address policy in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.:  First we need to log into the Exchange Admin Center. Navigate to the Mail Flow…
Suggested Courses
Course of the Month15 days, 10 hours left to enroll

743 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