あなたは持っているかもしれません最初の PowerShell スクリプトを作成しましたまたは、新しいユーザー アカウントの作成、ファイルの保存/コピー、ディスク クリーニング、ディスク監視、ユーザー管理、さらにはプロセス管理などの特定のタスクを自動化したいと考えています。この記事では、ニーズに応じて適応できる 5 つの PowerShell スクリプトの例を紹介します。
💡PowerShell スクリプトの作成方法がわからない場合は、始める前にこれをお読みください。初めての PowerShell スクリプトを作成する方法
このスクリプトを使用すると、特定のファイルやフォルダーをコンピューターにコピーできます。外付けハードドライブまたはネットワーク上で。カスタマイズすることができますWindowsファイルをバックアップする定期的に実行し、手動で実行することも、自動的に実行するようにスケジュールすることもできます。
# Spécifiez les fichiers et dossiers à sauvegarder
$source = "C:\\\\Users\\\\Utilisateur\\\\Documents\\\\MonDossier", "C:\\\\Users\\\\Utilisateur\\\\Musique\\\\MaMusique.mp3"
# Spécifiez l'emplacement de la sauvegarde
$destination = "D:\\\\Sauvegarde"
# Créez un nouveau dossier de sauvegarde
New-Item -ItemType Directory -Path $destination -Force
# Sauvegardez les fichiers et dossiers spécifiés
Copy-Item -Path $source -Destination $destination -Recurse -Force
このスクリプトは、変数を使用してバックアップするファイルとフォルダーを指定します。$source
など$destination
。注文New-Item
必要に応じて、新しいバックアップ フォルダーを作成します。注文Copy-Item
指定されたファイルとフォルダーをバックアップ場所にコピーします。
変数をカスタマイズできます$source
など$destination
選択したファイルとフォルダーをバックアップします。スケジュールされたタスクを追加して、スクリプトを定期的に自動的に実行することもできます。

例 2:ディスク クリーンアップ PowerShell スクリプト
このスクリプトは、ハード ドライブからジャンク ファイルや一時ファイルをクリーンアップするために使用できます。特定の種類のファイルを削除したり、不要なファイルをすべて削除したりするようにカスタマイズできます。
# Nettoie les fichiers temporaires et les fichiers de corbeille
Remove-Item -Path "$env:TEMP\\\\*" -Recurse -Force
Remove-Item -Path "$env:LOCALAPPDATA\\\\Temp\\\\*" -Recurse -Force
Clear-RecycleBin -Force
# Supprime les fichiers .tmp, .exe, .log du dossier de téléchargement
$downloads = [environment]::GetFolderPath("MyDocuments") + "\\\\Downloads"
Remove-Item -Path "$downloads\\\\*.tmp" -Recurse -Force
Remove-Item -Path "$downloads\\\\*.exe" -Recurse -Force
Remove-Item -Path "$downloads\\\\*.log" -Recurse -Force
# Supprime tous les fichiers du dossier de téléchargement
Remove-Item -Path "$downloads\\\\*" -Recurse -Force
このスクリプトでは次のコマンドを使用しますRemove-Item
一時ファイルとゴミ箱ファイルを削除します。変数$env:TEMP
ユーザーの一時フォルダーを指定します。$env:LOCALAPPDATA\\\\Temp
アプリケーションの一時フォルダーを指定します。
スクリプトでは次のコマンドも使用しますClear-RecycleBin
ユーザーのゴミ箱を空にします。
このスクリプトは、ユーザーのダウンロード フォルダー内の不要なファイルも削除します。変数を変更することでダウンロード フォルダーをカスタマイズできます$downloads
。削除するファイルの種類は、コマンド パラメータを変更することでカスタマイズできます。Remove-Item
。
例3:Sディスク使用量の監視
このスクリプトは、コンピュータのハード ドライブまたはネットワークの使用状況を監視するために使用できます。特定の使用量レベルに達したときに警告を発したり、現在のディスク使用量に関する情報を提供したりできます。
# Spécifiez le seuil d'utilisation du disque (en pourcentage)
$threshold = 80
# Récupérez les informations sur les disques
$disks = Get-PSDrive -PSProvider FileSystem | Where-Object {$_.Free -ne $null}
# Parcourez chaque disque
foreach ($disk in $disks) {
# Calculez l'utilisation du disque en pourcentage
$usage = ($disk.Used / $disk.Free) * 100
# Vérifiez si l'utilisation est supérieure au seuil
if ($usage -gt $threshold) {
# Envoyer une alerte par e-mail
$subject = "Alerte d'utilisation du disque"
$body = "L'utilisation du disque $($disk.Name) a dépassé le seuil de $threshold%."
Send-MailMessage -To "[email protected]" -From "[email protected]" -Subject $subject -Body $body -SmtpServer "smtp.example.com"
}
# Afficher les informations sur le disque
$name = $disk.Name
$size = [math]::Round($disk.Used / 1GB, 2)
$free = [math]::Round($disk.Free / 1GB, 2)
$used = [math]::Round($disk.Used / 1GB, 2)
$usage = [math]::Round($usage, 2)
Write-Host "$name - Taille: $size Go, Libre: $free Go, Utilisé: $used Go, Utilisation: $usage%"
}
このスクリプトは、変数を使用してディスク使用量のしきい値をパーセンテージで指定します。$threshold
。注文Get-PSDrive
ディスクと注文情報を取得しますWhere-Object
空き容量がゼロではないディスクをフィルタリングします。
次に、スクリプトはループを使用しますforeach
各ディスクを参照し、ディスク使用率をパーセンテージとして計算します。使用量が指定されたしきい値を超えると、スクリプトは次のコマンドを使用して電子メール アラートを送信します。Send-MailMessage
。
このスクリプトは、サイズ、空き領域、使用済み領域、使用率など、各ディスクに関する情報も表示します。
変数を変更することで、ディスク使用量のしきい値をカスタマイズできます。$threshold
。注文設定を編集して、送信者と受信者の電子メール アドレスをカスタマイズすることもできます。Send-MailMessage
。

例 4:ユーザー管理PowerShellスクリプト
このスクリプトは、コンピュータまたはネットワーク上のユーザー アカウントを管理するために使用できます。新しいユーザー アカウントの作成、既存のアカウントの変更、または不要なアカウントの削除に使用できます。
# Créer un nouveau compte utilisateur
New-LocalUser -Name "Nom_utilisateur" -Description "Description_utilisateur" -Password (ConvertTo-SecureString "Mot_de_passe" -AsPlainText -Force)
# Modifier un compte utilisateur existant
Set-LocalUser -Name "Nom_utilisateur" -Description "Nouvelle_description"
# Supprimer un compte utilisateur
Remove-LocalUser -Name "Nom_utilisateur"
このスクリプトは次のコマンドを使用しますNew-LocalUser
、Set-LocalUser
などRemove-LocalUser
ユーザーアカウントを管理するため。
注文New-LocalUser
新しいユーザーアカウントを作成するために使用されます。コマンドパラメータを変更することで、ユーザー名、説明、パスワードをカスタマイズできます。
注文Set-LocalUser
既存のユーザー アカウントを変更するために使用されます。コマンドパラメータを変更することで、ユーザー名と説明をカスタマイズできます。
注文Remove-LocalUser
に使用されますユーザーアカウントを削除する既存。コマンドパラメータを変更することで、ユーザー名をカスタマイズできます。
コマンドに注意してくださいNew-LocalUser
などRemove-LocalUser
適切に機能するには管理者権限が必要であり、影響を与える可能性があります。慎重に使用してください。
例 5:プロセス管理 PowerShell スクリプト
このスクリプトは、コンピュータまたはネットワーク上で実行されているプロセスを管理するために使用できます。実行中のプロセスを表示したり、不要なプロセスを終了したりするために使用できます。
Get-Process | Format-Table Id, ProcessName, CPU, Memory -AutoSize
$processId = Read-Host "Entrez l'ID du processus que vous souhaitez terminer"
Stop-Process -Id $processId -Force
このスクリプトでは次のコマンドを使用しますGet-Process
コンピュータ上で実行中のプロセスを一覧表示します。次に、彼は次のコマンドを使用しますFormat-Table
各プロセスに関する情報を明確に表示します。コマンドパラメータを変更することで、表示される情報をカスタマイズできますFormat-Table
。
次に、スクリプトはユーザーに、終了するプロセスの ID を入力するように求めます。彼はコマンドを使用しますStop-Process
選択したプロセスを完了します。
コマンドに注意してくださいStop-Process
誤って使用すると危険な可能性があります。コマンドを使用する前に、コマンドの結果を必ず理解してください。