Power Shell Script to pull all deactivated users
Has anyone written a script to pull a list of deactivated users?
my goal is to validate sharepoint administrators in AD to see if they are active or deactivated. Any insight would be appreciated.
yes. sorry for not making that clear. I found a few examples to enter in a user name to check AD, but i need to do that with a list of names instead rather than one by one.
Hi,
Here's a few possibilities:
Returns all disabled AD accounts -
Search-ADAccount -AccountDisabled
Checks each username listed -
$usersToCheck = 'tester1','tester2','tester3','tester4'
foreach ($user in $usersToCheck) {
If (((Get-ADUser $user).Enabled) -eq $true) { Write-Host "$user is enabled in AD" -ForegroundColor Green }
Else { Write-Host "$user is disabled in AD" -ForegroundColor Red }
Reads a text file of usernames and checks those -
Get-Content .\userList.txt | ForEach {
If (((Get-ADUser $_).Enabled) -eq $true) { Write-Host "$_ is enabled in AD" -ForegroundColor Green }
Else { Write-Host "$_ is disabled in AD" -ForegroundColor Red }
Don't retire TechNet! -
(Don't give up yet - 12,575+ strong and growing)
Similar Messages
-
Hi Everyone,
I want to create a powershell script file
1) Check a directory and upload all termset csv files into the SharePoint local taxonomy.
2) Input paramaters - directory that containss termset csv files, Local Termstore to import to,
3) Prior to updating get a backup of the existing termstore (for rollback/recovery purposes)
4) Parameters should be passed in via XML file.
Please let me know how to do it.
Regards,
SrinivasHi,
Please check this link
http://termsetimporter.codeplex.com/
Please remember to click 'Mark as Answer' on the answer if it helps you -
Power shell script to list all files and folder permissions recursively
Hi All,
I am looking for a powershell script to perform the following operations.
1) To list the folder and file permissions(Allow,Deny both) recursively in a given folder.
2) List out all the files and folders which are having the deny permission or having only the read access (or) only the write access. Basically the folder should have Read,Execute,Write permissions. Else we have to flag that file/folder name.
I had written a batch script for the same which does this task using icacls.exe output, but this script takes lot of time to recursively parse all the files ( ~1 lakh files).
Please help me with the powershell script for the same.
Thanks
SambasivaTry this module: http://gallery.technet.microsoft.com/scriptcenter/PowerShellAccessControl-d3be7b83
After importing the module, you can run something like this:
dir c:\folder -recurse | Get-AccessControlEntry
That output can be exported to a CSV for later viewing. You can also provide some parameters to Get-AccessControlEntry to limit the results:
dir c:\folder -recurse | Get-AccessControlEntry -FileRights Write
dir c:\folder -recurse | Get-AccessControlEntry -AceType AccessDenied
dir c:\folder -recurse | Get-AccessControlEntry -AceType AccessAllowed -FileRights Write -
Need Power shell script to run on all databases.
Hi,
I have a stored procedure to generate report, using power shell script want to get all databases, run stored procedure on each database and generate the results as .csv file, output the file with database name (place it on directory) and email .csv
file.
looking for script, can any one help pls?
Naveen| Press Yes if the post is useful.Can you please share with me the codes
Naveen| Press Yes if the post is useful.
Dear N_14
You can have a look on the followings
http://www.csharp-station.com/Tutorial/AdoDotNet/lesson07
http://www.codeproject.com/Articles/415732/Reading-and-Writing-CSV-Files-in-Csharp
https://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage%28v=vs.110%29.aspx
Best Regards
mintssoul -
Trying to run program off network location using GPO with Power shell script.
Hello All,
Not much of a script writer. I am giving it a shot. My issue is that I need to run a application update across our network and I am trying to do it with as little hands on as possible. So I was planning to push a GPO with a power shell script in it
to run the program with elevated privileges.
Little background:
We are running on a domain and end users do not have admin rights.
The application is stored on a share on our network that is open to all domain users.
The installer user name and password is a temp one and will only be valid for the 30 min window when everyone logs in at the beginning of the day.
So this is what I have so far.
$username = "USER"
$password = "PASSWORD"
$credentials = New-Object System.Management.Automation.PSCredential -ArgumentList @($username,(ConvertTo-SecureString -String $password -AsPlainText -Force))
Start-Process PSQLv11Patch_Client_x86.msp -Credential ($credentials) -WorkingDirectory \\Server\Folder\Folder1\Folder2\filder3\PSQLv11sp3_x32\
But for some reason I keep getting :
Start-Process : This command cannot be run due to the error: The system cannot find the file specified.
At line:10 char:1
+ Start-Process PSQLv11Patch_Client_x86.msp -Credential ($credentials) -WorkingDir ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException
+ FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand
Any help you could give would be great.
Thanks,
jdfmonkeyHi jdfmonkey,
Has anyone provided an answer to your original question? I am trying to use Start-Process to launch a process using another logged in user's credentials, and am not able to get it working:
$cred=Get-Credential
start-process Process.exe-WorkingDirectoryC:\Scripts-Credential$cred
I get the same error that you mentioned:
start-process : This command cannot be run due to the error: The system cannot find the file specified.
At C:\Scripts\Process.ps1:2 char:1
+ start-process Process.exe -WorkingDirectory C:\Scripts -Credential ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [Start-Process], InvalidOperationException
+ FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand
When I leave off the credentials:
start-processProcess.exe-WorkingDirectoryC:\Scripts
It works correctly. Does anyone have a solution to make this work correctly?
Please ask your own question. You issue is nothing like the current thread. You clearly are using a user account that has no access to the folder. It is a permissions issue. It is not a scripting issue.
If you need further help please start your own question.
¯\_(ツ)_/¯ -
Trying to run Power shell Script on task schedule
My case is i'm trying to run a power shell script through the task schedule.
Note if i run the script locally it is working fine but from the task schedule it is not working.
More information:
script function: Password Change Notification
Task name : test3
Time to do the task: 9:08 am every day
the status : running
.ps1 file location: under C\windows\system32\
some actions in the task history after the dated time to run:
1 Task Scheduler launched "{3023b1eb-9b29-47b9-ace2-e6083e2f00cc}" instance of task "\test3" due to a time trigger condition
2 Task Engine "S-1-5-21-60622444-1628707926-2526327935-500: enviroment\Admin:S4U:LUA" received a message from Task Scheduler service requesting to launch task "\test3" .
3 Task Scheduler started "{3023b1eb-9b29-47b9-ace2-e6083e2f00cc}" instance of the "\test3" task for user "enviroment\admin
4 Task Scheduler launched action ""C:\Windows\System32\Password Change Notification\Password Change Notification.ps1"" in instance "{3023b1eb-9b29-47b9-ace2-e6083e2f00cc}" of task "\test3
5 Task Scheduler launch task "\test3" , instance "C:\Windows\System32\notepad.exe" with process ID 5052Hi MeipoXu,
First of all i would like to thank you for your answer, i followed the URL that you posted already in the previous comment and unfortunately it didn't work, and please find my ps1 file
content as typed below and give me your feedback on that.
# # Version 1.1 May 2014
# Robert Pearman (WSSMB MVP) # TitleRequired.com
# Script to Automated Email Reminders when Users Passwords due to Expire.
# # Requires: Windows PowerShell Module for Active Directory
# # For assistance and ideas, visit the TechNet Gallery Q&A Page. http://gallery.technet.microsoft.com/Password-Expiry-Email-177c3e27/view/Discussions#content
# Please Configure the following variables....
$smtpServer="outlook. myDomain " $expireindays = 7
$from = "الدعم الفني
<ITHelpDesk@myDomain>"
$logging = "Enabled" # Set to Disabled to Disable Logging
$logFile = "PassExpireNotlog.csv" # ie. c:\mylog.csv
$testing = "Enabled" ## "Enabled" # Set to Disabled to Email Users
$testRecipient = "MyEmail@MyDomain"
$encoding = [System.Text.Encoding]::Unicode $date = Get-Date -format ddMMyyyy
# Check Logging Settings if (($logging) -eq "Enabled")
{ # Test Log File Path
$logfilePath = (Test-Path $logFile) if (($logFilePath) -ne "True")
{ # Create CSV File and Headers
New-Item $logfile -ItemType File
Add-Content $logfile "Date,Name,EmailAddress,DaystoExpire,ExpiresOn,MsgBody"
} } # End Logging Check
# Get Users From AD who are Enabled, Passwords Expire and are Not Currently Expired
Import-Module ActiveDirectory $users = get-aduser -filter * -SearchScope Subtree -SearchBase "OU=UsersOU,DC=MyDomain,DC=MyrootDomain,DC=MYrootNS" -properties Name, PasswordNeverExpires, PasswordExpired, PasswordLastSet,
EmailAddress |where {$_.Enabled -eq "True"} | where { $_.PasswordNeverExpires -eq $false } | where { $_.passwordexpired -eq $false }
$maxPasswordAge = (Get-ADDefaultDomainPasswordPolicy).MaxPasswordAge
# Process Each User for Password Expiry foreach ($user in $users)
{ $Name = (Get-ADUser $user | foreach { $_.Name})
$emailaddress = $user.emailaddress
$passwordSetDate = (get-aduser $user -properties * | foreach { $_.PasswordLastSet })
$PasswordPol = (Get-AduserResultantPasswordPolicy $user)
# Check for Fine Grained Password
if (($PasswordPol) -ne $null) {
$maxPasswordAge = ($PasswordPol).MaxPasswordAge
$expireson = $passwordsetdate + $maxPasswordAge
$today = (get-date) $daystoexpire = (New-TimeSpan -Start $today -End $Expireson).Days
# Set Greeting based on Number of Days to Expiry.
# Check Number of Days to Expiry
$messageDays = $daystoexpire if (($messageDays) -ge "2")
{ $messageDays = "خلال
" + "$daystoexpire" + " ايام"
} elseif (($messageDays) -eq "2")
{ $messageDays = "خلال يومين
} else
{ $messageDays = "اليوم."
} # Email Subject Set Here
$subject="كلمة المرور الخاصة بك ستنتهي
$messageDays"
# Email Body Set Here, Note You can use HTML, including Images.
$body = "<P style='font-family: Arial; font-size: 16pt' />
<center> الاستاذ/ $name
</center>
<br> <center>
كلمة المرور الخاصة بك ستنتهي $messageDays </center>
<br> <center>
نأمل تغييرها في أقرب فرصة حتي تتمكن من الدخول على النظام
</center>
<br> <center>
مع تحيات الادارة العامة لتقنية المعلومات
</center>
<br> </P>"
# If Testing Is Enabled - Email Administrator
if (($testing) -eq "Enabled")
{ $emailaddress = $testRecipient
} # End Testing # If a user has no email address listed
if (($emailaddress) -eq $null)
{ $emailaddress = $testRecipient
}# End No Valid Email # Send Email Message
if (($daystoexpire -ge "0") -and ($daystoexpire -lt $expireindays))
{ # If Logging is Enabled Log Details
if (($logging) -eq "Enabled")
{ Add-Content $logfile "$date,$Name,$emailaddress,$daystoExpire,$expireson,$body"
} # Send Email Message
Send-Mailmessage -smtpServer $smtpServer -from $from -to $emailaddress -subject $subject -body $body -bodyasHTML -priority High -Encoding $encoding
} # End Send Message
} # End User Processing
# End -
Power Shell Script to Initiate Billing Determinants Calculations
Hi All,
I'm New to CC&B, i have a problem when i try to initiate the BD Calc thru Power shell script for "ALL" Accounts, at the same time i'm able to succeed for single account. Did any one faced this problem ?
Any advise?
btw, i use Win2008R2 server (x64) | MDM 1.6.1.2 | PShell v1.0
- Nandawbadmin start systemstatebackup -backupTarget:$backdir -[quiet]"[quiet]"? I guess you should remove the bracketswbadmin start systemstatebackup -backupTarget:$backdir -quiet
-
I need AD Health status via Power Shell script
Dear All,
I need AD Health power shell script and it has to be sent via email as report on daily basis
Can anyone help on this?
Thanks,
PushparajI found below script which can be used, but i would request run these scirpts in test environment before executing in production.
http://fearthemonkey.co.uk/using-powershell-to-perform-dc-health-checks/
http://www.wolffhaven45.com/blog/powershell/automate-some-active-directory-health-checks-via-powershell/
You can also search for scripts in below repository.
http://gallery.technet.microsoft.com/
Also, for scripting related request, its better to post the thread in dedicated scripting/powershell forum.
http://social.technet.microsoft.com/Forums/scriptcenter/en-US/home?forum=ITCG
Awinish Vishwakarma - MVP
My Blog: awinish.wordpress.com
Disclaimer This posting is provided AS-IS with no warranties/guarantees and confers no rights. -
How to execute power shell script file inside DSC script resource
Hi,
How to execute /call powershell scirpt file inside DSC script resource , some thing like below and capture the status of execution.
Node $AllNodes.NodeName
Script ExecuteSQLDeploy
#SetScript = {powershell.exe .\SQLDeploy.ps1 "param1" "param2" "param3" "param4" "param5" }
#TestScript= {powershell.exe .\SQLDeploy.ps1 "param1" "param2" "param3" "param4" "param5 }
#GetScript= { return $true;}
BasawarajThanks for reply.
Now i am able to execute the power shell script with DSC. I am getting no error when i run , but the script logic wrote inside ( deploying sql incremental changes ) not working . I am using SQLCMD in the powershell script to deploy sql
changes . Can you please elaborate on "script is compatible with DSC" , the script
should not contain write-host cmdlet.... etc something like that.
Copying recursively from ****************************** to ************************** succeeded.
Perform operation 'Invoke CimMethod' with following parameters, ''methodName' = SendConfigurationApply,'className' = MSFT_DSCLocalConfigurationManager,'namespaceName' = root/Microsoft/Windows/DesiredStateConfiguration'.
An LCM method call arrived from computer ************ with user sid **********************************************
[V-BAKANT]: LCM: [ Start Set ]
[V-BAKANT]: LCM: [ Start Resource ] [[Script]ExecuteSQLDeploy]
[V-BAKANT]: LCM: [ Start Test ] [[Script]ExecuteSQLDeploy]
[V-BAKANT]: LCM: [ End Test ] [[Script]ExecuteSQLDeploy] in 0.1110 seconds.
[V-BAKANT]: LCM: [ Start Set ] [[Script]ExecuteSQLDeploy]
[V-BAKANT]: LCM: [ End Set ] [[Script]ExecuteSQLDeploy] in 0.3010 seconds.
[V-BAKANT]: LCM: [ End Resource ] [[Script]ExecuteSQLDeploy]
[V-BAKANT]: LCM: [ End Set ]
[V-BAKANT]: LCM: [ End Set ] in 0.8810 seconds.
Operation 'Invoke CimMethod' complete.
Time taken for configuration job to complete is 0.923 seconds
Basawaraj -
Web Service to call Power Shell Script
Hello All,
How can we make a call to power shell script from a asp.net web service with parameter ?
Thanks in AdvanceNormally you can do everything using web service, why do you want to call powershell
May be you can plan
http://geekswithblogs.net/Norgean/archive/2012/09/19/running-powershell-from-within-sharepoint.aspx
Plan to use workflow for same
http://ilovesharepoint.codeplex.com/wikipage?title=Execute%20PowerShell%20Script%20Action
Also check
http://forums.iis.net/t/1161083.aspx?running+PS+scripts+from+a+webpage+sharepoint+site
If this helped you resolve your issue, please mark it Answered -
Power shell script to run a Resuable workflow.
Hi,
We came across a scenario where we want to run a resuable workflow on all List items in a list. I am not sure if this can be acheived through power shell. Can any one please help me to run reusable workflows through power shell script on list items.
Thanks,
SandyHello,
Recently i executed below script for my VS workflow on list items, you can also try same on reusable WF.
Basically you need to use "WorkFlowManager" and "WorkFlowAssociations " to find WF on list and then execute it.
http://www.mysharepointadventures.com/2012/06/start-a-workflow-using-powershell/
http://www.thesysadminhimself.com/2013/09/sharepoint-start-workflow-all-items-powershell.html
Hemendra:Yesterday is just a memory,Tomorrow we may never see
Please remember to mark the replies as answers if they help and unmark them if they provide no help -
Power shell script for get a content db for a particular web application
Hi
what is the power shell script for get a content db for a particular web application
Get-SPDatabase
adiltry this one
Get-SPContentDatabase -webapplication http://url
this will return all the database for the web applications.
Get-SPContentDatabase -site http://contoso.com
this will return the database name in which the contose site collection is.
Please remember to mark your question as answered &Vote helpful,if this solves/helps your problem. ****************************************************************************************** Thanks -WS MCITP(SharePoint 2010, 2013) Blog: http://wscheema.com/blog -
Using Power shell script how to hidden SharePoint existing features.
Hi Firends,
Using Power shell script how to hidden SharePoint existing features.
Please help me.
Thanks,
Tiru
TiruThe Hidden property is set within the solution, so you would need access to the source code in order to set it.
Trevor Seward
Follow or contact me at...
  
This post is my own opinion and does not necessarily reflect the opinion or view of Microsoft, its employees, or other MVPs. -
Script to pull all connections from one IP out of DPS access logs...
I need an efficient script to pull all of the connections for 2 IP's (or match the first two octets of the IP will cover both addresses also) from multiple DPS access logs out and write them to a file.
The current one-liner I've been using doesn't work well with multiple access log files. So I tried combining multiple logs into one access log, and then trying to parse that large log file (around . The problem is, I am now getting the error: "bash: /usr/bin/egrep: Arg list too long", which is because it takes all of the connection numbers and builds a grep with them.
Here is the one-liner I've been using:
FILTER='client=192.168.1.1|client=192.168.2.1'; FILE='access.*'; for j in $FILE; do unset CONN; for i in `egrep -h "$FILTER" $j | awk '{print $8}'`; do CONN="$CONN|$i"; done; if [ -n "${CONN+x}" ]; then egrep -h $CONN $j; fi; done | sort -t '/' -k2,2M -k1n
Is there a faster and more efficient way to pull out all of the connections from one or more IP's in access logs? I would think someone out there would have written something to do this?
Thanks everyone!!!
Edited by: keesor on Aug 17, 2011 2:49 PMIt could be as simple as
lgrep -O conn <IP> access
If you have more logs you can cat them and pipe the output to lgrep in a pipeline, like:
cat access.1 access.2 ... access.n | lgrep -O conn <IP>
Just make sure that the logs are listed in sequence. The script won't produce reliable results if the log is non-sequential. -
Hi,
I am trying to launch Amazon EC2 windows server 2008 R2 instance using AWS Auto Scaling feature. I have used cusmized AMI in Autoscaling Launch configuration to launch an instance.I have placed Power Shell script in AMI.
The responsibility of script is to download code from AWS S3 and deploy in IIS server while windows startup first time.
When i check status, IIS is started succesfully. But default Application pool is not started.
To resolve this issue i have written one scheduled script. It helps to start the application pool if any application pool is in stopped state.
After this Application pool is started but i am not able to communicate with IIS server through browser.
Please help any one to resolve this issue.
Thanks in advanceHi Vchreddy,
For the IIS issue, we recommend you can post in IIS forum for more effective support:
http://forums.iis.net/
Thanks for your understanding.
Maybe you are looking for
-
Hi, I've select query to retrive the data in the following order Sequnce ID Model Barcode 1 Dell 123 2 Dell 124 3 Dell 125 4 HP 126 5 hp 127 6 hp 128 7 apple 129 8 apple 130 I want the following to be selected round robin for Dell and Hp laptop alone
-
Finder sidebar doesn't work for networking?
Does anybody else find that the sidebar in finder doesn't work when you network your computer to a pc network? I SEE the file servers when I click on "all" but when I double click on one of them it always says "connection failed". The only way I can
-
Recently added three newer HP LaserJet M4555 MFPs to our Web Jetadmin Data Collection for reporting. The Data Collection for Accessory Inventory, Supply Utilization, Device Inventory and Event Log History all worked - they return a Collection Status
-
Hello, we have an ECC 5.0 system (NW 04) and would like to implement an offline scenario (CS). Is there a way to do this in ABAP or is it only possible in the Java stack? Which restrictions do you see in general in a NW04 environment? Thanks, Michael
-
Search by title problems...
Someone please tell me if this is just me, but searching by title seems terribly broken in LR 1.1. Try searching for Title "is empty" or Title "isn't empty". It behaves for me as if all of my photos have titles when in fact almost none do. I've also