PowerShell
PowerShell est un langage de programmation pour les systèmes Microsoft Windows.
Référence
IT-Connect
- http://www.it-connect.fr/powershell-pour-les-debutants-1ere-partie/
- http://www.it-connect.fr/powershell-et-active-directory-modifier-le-domaine-des-adresses-mails/
- http://www.it-connect.fr/active-directory-supprimer-les-ordinateurs-dune-ou-en-powershell/
- http://www.it-connect.fr/creer-des-comptes-utilisateurs-par-lot-avec-powershell-v2-et-le-module-active-directory-server-2008-r2/
- http://www.it-connect.fr/chapitres/modifier-la-resolution-de-lecran/
Marie Pascal Delamare
Site de Marie Pascal Delamare, BTS SIO / STS SIO
Youtube
John Savill's Technical Training, chaîne Youtube
- https://www.youtube.com/@NTFAQGuy
- série de vidéos sur PowerShell :
TechSnips by ATA Learning, chaine Youtube, sélection "Doing anything with PowerShell", 334 vidéos au 29/05/2023 :
TechThoughts, chaine Youtube, 41 vidéos au 11/06/2023 :
- https://www.youtube.com/@Techthoughts2/videos
- série de vidéos sur PowerShell :
Document
Gestion des path sous PowerShell, PDF, 31 pages :
Source de script
Gérer les autorisations NTFS avec PowerShell :
Copie de fichiers avec BITS (Background Intelligent Transfer Service) :
PowerShell : convertir PS1 en EXE ; création d'un exécutable :
- https://www.it-connect.fr/powershell-convertir-ps1-en-exe-executable/
- https://www.majorgeeks.com/files/details/ps1_to_exe.html
Interface graphique
- Exemple d'interface graphique :
Windows10Debloater
Script si problème mise à jour Windows
Le service "Windows Update" s'appelle wuauserv :
Stop-Service -Name wuauservStart-Service -Name wuauservSet-Service -Name wuauserv -StartupType AutomaticSet-Service -Name wuauserv -StartupType ManualSet-Service -Name wuauserv -StartupType Disabled
Impression
Supprimer toutes les fichiers des files d'attente d'impression :
Stop-Service Spooler Remove-Item "C:\Windows\System32\spool\PRINTERS\*.*" -Force Start-Service Spooler
Autre
#################### - VARIABLES - ####################
$logiciel = @(
[pscustomobject]@{nom="7Zip";path="C:\Support\7zip\7z2201-x64.exe"}
[pscustomobject]@{nom="VLC";path="C:\Support\VLC\vlc-3.0.17.4-win64.exe"}
[pscustomobject]@{nom="Adobe";path="C:\Support\AdobeXI\AcroRdrDC2101120039_fr_FR.exe"}
[pscustomobject]@{nom="BgInfo";path="C:\Support\BgInfo\setup-BGInfo4.27.exe"}
[pscustomobject]@{nom="Bureau Distant";path="C:\Support\Bureau distant\setup-bureau distant-v202211.exe"}
)
#################### - SCRIPT - ####################
$continue = $true
while ($continue){
write-host "-------------------- Logiciel --------------------"-ForegroundColor Cyan
write-host "> 1 --->" $logiciel[0].nom -ForegroundColor Cyan
write-host "> 2 --->" $logiciel[1].nom -ForegroundColor Cyan
write-host "> 3 --->" $logiciel[2].nom -ForegroundColor Cyan
write-host "> 4 --->" $logiciel[3].nom -ForegroundColor Cyan
write-host "> 5 --->" $logiciel[4].nom -ForegroundColor Cyan
write-host "> all ---> Installation de tous les logiciels de la liste"-ForegroundColor Cyan
write-host "--------------------------------------------------"-ForegroundColor Cyan
Write-Host "Select an option or type" -NoNewline
Write-Host " [quit] " -ForegroundColor Yellow -NoNewline
Write-Host "to exit: " -NoNewline
$choix = Read-Host
switch ($choix)
{
"1"
{
Write-Host "Installation de"$logiciel[0].nom"sur le poste"
Start-Process -FilePath $logiciel[0].path -ArgumentList "/S" -NoNewWindow -Wait
}
"2"
{
Write-Host "Installation de"$logiciel[1].nom"sur le poste"
Start-Process -FilePath $logiciel[1].path -ArgumentList "/S" -NoNewWindow -Wait
}
"3"
{
Write-Host "Installation de"$logiciel[2].nom"sur le poste"
Start-Process -FilePath $logiciel[2].path -ArgumentList "/S" -NoNewWindow -Wait
}
"4"
{
Write-Host "Installation de"$logiciel[3].nom"sur le poste"
Start-Process -FilePath $logiciel[3].path -ArgumentList "/S" -NoNewWindow -Wait
}
"5"
{
Write-Host "Installation de"$logiciel[4].nom"sur le poste"
Start-Process -FilePath $logiciel[4].path -ArgumentList "/S" -NoNewWindow -Wait
}
"all"
{
Write-Host "Installation de"$logiciel[0,1,2,3,4].nom"sur le poste"
Start-Process -FilePath $logiciel[0,1,2,3,4].path -ArgumentList "/S" -NoNewWindow -Wait
}
"quit"
{
$continue = $false
}
default {Write-Host "Choix invalide"-ForegroundColor Red}
}
}