{"id":6456,"date":"2023-09-01T12:10:19","date_gmt":"2023-09-01T12:10:19","guid":{"rendered":"https:\/\/www.webhi.com\/how-to\/?p=6456"},"modified":"2023-09-01T12:10:21","modified_gmt":"2023-09-01T12:10:21","slug":"fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server","status":"publish","type":"post","link":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/","title":{"rendered":"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l&#8217;administration Windows"},"content":{"rendered":"\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1200\" height=\"675\" src=\"https:\/\/www.webhi.com\/how-to\/gilrogre\/2023\/08\/win_powershell_fr.jpg\" alt=\"Automatisation Power Shell windows server MS DOS pour les t\u00e2ches Windows\" class=\"wp-image-6471\" srcset=\"https:\/\/www.webhi.com\/how-to\/gilrogre\/2023\/08\/win_powershell_fr.jpg 1200w, https:\/\/www.webhi.com\/how-to\/gilrogre\/2023\/08\/win_powershell_fr-300x169.jpg 300w, https:\/\/www.webhi.com\/how-to\/gilrogre\/2023\/08\/win_powershell_fr-1024x576.jpg 1024w, https:\/\/www.webhi.com\/how-to\/gilrogre\/2023\/08\/win_powershell_fr-768x432.jpg 768w, https:\/\/www.webhi.com\/how-to\/gilrogre\/2023\/08\/win_powershell_fr-150x84.jpg 150w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/figure>\n\n\n\n<p><strong>PowerShell<\/strong> est un shell de ligne de commande et un langage de script qui permet aux professionnels de l&#8217;informatique d&#8217;automatiser les t\u00e2ches administratives sous <strong>Windows<\/strong>. Avec PowerShell, vous pouvez g\u00e9rer les serveurs Windows, les postes de travail, les applications et les services de mani\u00e8re efficace via une interface de ligne de commande simple.<\/p>\n\n\n\n<p>Dans ce guide complet, nous couvrirons les essentiels de l&#8217;utilisation de PowerShell pour l&#8217;administration Windows, notamment :<\/p>\n\n\n\n<ul>\n<li>Pr\u00e9sentation de PowerShell<\/li>\n\n\n\n<li>Fonctionnalit\u00e9s et capacit\u00e9s cl\u00e9s<\/li>\n\n\n\n<li>Installation et configuration de PowerShell<\/li>\n\n\n\n<li>Syntaxe PowerShell, applets de commande et pipelines<\/li>\n\n\n\n<li>Utilisation d&#8217;objets dans PowerShell<\/li>\n\n\n\n<li>Scripts avec PowerShell<\/li>\n\n\n\n<li>Automatisation des t\u00e2ches et des workflows<\/li>\n\n\n\n<li>Gestion des syst\u00e8mes et services Windows<\/li>\n\n\n\n<li>Bonnes pratiques pour l&#8217;\u00e9criture de scripts PowerShell<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"une-introduction-%C3%A0-powershell\">Une introduction \u00e0 PowerShell<\/h2>\n\n\n\n<p>PowerShell est le shell de ligne de commande et le langage de script standardis\u00e9 de Microsoft pour la gestion des syst\u00e8mes d&#8217;exploitation Windows et des applications. Il est int\u00e9gr\u00e9 \u00e0 Windows depuis Windows 7 et Windows Server 2008 R2.<\/p>\n\n\n\n<p>Les principales fonctionnalit\u00e9s de PowerShell incluent :<\/p>\n\n\n\n<ul>\n<li>Fournit un shell de ligne de commande puissant pour la gestion des syst\u00e8mes<\/li>\n\n\n\n<li>Impl\u00e9mente un langage de script pour l&#8217;automatisation des t\u00e2ches<\/li>\n\n\n\n<li>Permet d&#8217;acc\u00e9der au .NET Framework depuis la ligne de commande<\/li>\n\n\n\n<li>Expose l&#8217;instrumentation de gestion Windows via des applets de commande faciles \u00e0 utiliser<\/li>\n\n\n\n<li>Offre des capacit\u00e9s de script puissantes pour le traitement par lots de commandes<\/li>\n\n\n\n<li>Fournit une API d&#8217;h\u00e9bergement pour int\u00e9grer PowerShell dans les applications<\/li>\n\n\n\n<li>Con\u00e7u pour l&#8217;automatisation du syst\u00e8me et la planification des t\u00e2ches<\/li>\n<\/ul>\n\n\n\n<p>Avec PowerShell, les administrateurs peuvent contr\u00f4ler et automatiser presque tous les aspects des syst\u00e8mes et serveurs Windows. Il remplace les anciens shells comme l&#8217;invite de commandes et utilise des objets .NET pour interagir avec le syst\u00e8me d&#8217;exploitation.<\/p>\n\n\n\n<p>Par rapport aux autres langages de script, PowerShell vise \u00e0 fournir une syntaxe et une exp\u00e9rience simples et coh\u00e9rentes construites sur le .NET Framework. Il tire parti des classes .NET pour exposer les API Windows de mani\u00e8re simple.<\/p>\n\n\n\n<p>Maintenant que nous avons couvert les bases, voyons comment installer et configurer PowerShell sous Windows.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"installation-et-configuration-de-powershell\">Installation et configuration de PowerShell<\/h2>\n\n\n\n<p>PowerShell est int\u00e9gr\u00e9 \u00e0 Windows 7, Windows Server 2008 R2 et versions ult\u00e9rieures. Pour v\u00e9rifier si vous avez PowerShell install\u00e9, ouvrez l&#8217;invite de commandes et tapez&nbsp;<code>powershell<\/code>.<\/p>\n\n\n\n<p>Si PowerShell est install\u00e9, vous acc\u00e9derez au shell interactif PowerShell. Tapez&nbsp;<code>exit<\/code>&nbsp;pour quitter le shell.<\/p>\n\n\n\n<p>Pour les anciennes versions de Windows, vous pouvez installer PowerShell via les t\u00e9l\u00e9chargements Windows Management Framework de Microsoft. Cela vous permet d&#8217;obtenir les derni\u00e8res mises \u00e0 jour PowerShell sur les anciens syst\u00e8mes d&#8217;exploitation.<\/p>\n\n\n\n<p>Une fois PowerShell install\u00e9, vous pouvez personnaliser votre environnement via le script de profil PowerShell. Cela vous permet de d\u00e9finir des alias, des fonctions, des variables et d&#8217;autres pr\u00e9f\u00e9rences qui se chargent \u00e0 chaque d\u00e9marrage du shell.<\/p>\n\n\n\n<p>Pour configurer votre profil, cr\u00e9ez un script PowerShell appel\u00e9&nbsp;<code>Microsoft.PowerShell_profile.ps1<\/code>&nbsp;enregistr\u00e9 dans l&#8217;un de ces dossiers :<\/p>\n\n\n\n<ul>\n<li><code>$HOME\\Documents\\WindowsPowerShell\\<\/code>&nbsp;pour votre profil personnel<\/li>\n\n\n\n<li><code>$PSHOME\\Microsoft.PowerShell_profile.ps1<\/code>&nbsp;comme profil global pour tous les utilisateurs<\/li>\n<\/ul>\n\n\n\n<p>Par exemple, pour d\u00e9finir une invite PowerShell personnalis\u00e9e, ajoutez ce qui suit \u00e0 votre script de profil :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">function prompt {\n  Write-Host \"$(Get-Date -Format G) [Administrateur]\" -ForegroundColor Cyan\n  Write-Host \" $($executionContext.SessionState.Path.CurrentLocation)$('&gt;' * ($nestedPromptLevel + 1)) \" \n  # Invite de saisie\n  return \" \"\n}<\/code><\/pre>\n\n\n\n<p>Cela affichera un horodatage, un nom d&#8217;utilisateur, le r\u00e9pertoire actif et retournera un espace pour la saisie chaque fois que vous d\u00e9marrerez PowerShell ou ex\u00e9cuterez une commande.<\/p>\n\n\n\n<p>Les profils vous permettent de personnaliser les alias, les fonctions, les variables d&#8217;environnement et les pr\u00e9f\u00e9rences PowerShell. Passons maintenant \u00e0 la syntaxe PowerShell.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"comprendre-la-syntaxe-powershell\">Comprendre la syntaxe PowerShell<\/h2>\n\n\n\n<p>La syntaxe PowerShell suit une structure verbe-nom pour les commandes, align\u00e9e sur le langage naturel. Les principales commandes que vous ex\u00e9cuterez sont appel\u00e9es&nbsp;<em>cmdlets<\/em>&nbsp;qui effectuent une action sur un objet cible.<\/p>\n\n\n\n<p>Les cmdlets suivent un sch\u00e9ma de nommage standard&nbsp;<code>Verbe-Nom<\/code>&nbsp;comme&nbsp;<code>Get-Process<\/code>,&nbsp;<code>Set-Location<\/code>&nbsp;ou&nbsp;<code>Start-Service<\/code>. Le verbe d\u00e9crit l&#8217;action, tandis que le nom repr\u00e9sente l&#8217;entit\u00e9 sur laquelle l&#8217;action est effectu\u00e9e.<\/p>\n\n\n\n<p>Par exemple, pour r\u00e9cup\u00e9rer une liste des processus en cours d&#8217;ex\u00e9cution :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">PS C:\\&gt; Get-Process<\/code><\/pre>\n\n\n\n<p>Cette applet de commande verb&nbsp;<code>Get<\/code>&nbsp;agit sur le nom de processus pour retourner tous les processus actifs sur le syst\u00e8me.<\/p>\n\n\n\n<p>Les applets de commande peuvent prendre des param\u00e8tres positionnels qui modifient leur comportement ou transmettent des objets d&#8217;entr\u00e9e. Les param\u00e8tres sont indiqu\u00e9s avec un tiret&nbsp;<code>-Name<\/code>&nbsp;ou peuvent \u00eatre positionn\u00e9s directement comme&nbsp;<code>Get-Process PowerShell<\/code>.<\/p>\n\n\n\n<p>Le piping&nbsp;<code>|<\/code>&nbsp;transmet la sortie d&#8217;une applet de commande vers l&#8217;entr\u00e9e d&#8217;une autre. Cela vous permet de chainer plusieurs commandes comme :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">PS C:\\&gt; Get-Process | Where-Object { $_.CPU -gt1000 }<\/code><\/pre>\n\n\n\n<p>Cela r\u00e9cup\u00e8re les processus, filtre ceux de plus de 1000 CPU, et les transmet dans le pipeline.<\/p>\n\n\n\n<p>Au-del\u00e0 des applets de commande, PowerShell prend en charge toute la syntaxe de programmation habituelle comme les variables, les boucles, les conditions, les commutateurs, les fonctions, les classes, etc. Voyons quelques exemples :<\/p>\n\n\n\n<p><strong>Variables :<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">$processName = \"PowerShell\"\nGet-Process -Name $processName<\/code><\/pre>\n\n\n\n<p><strong>Conditionnel Si\/Sinon :<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">$cpu = Get-Process PowerShell | Select-Object -ExpandProperty CPU\n\nif ($cpu -gt 1000) {\n  Write-Host \"CPU \u00e9lev\u00e9 !\" \n} else {\n  Write-Host \"CPU normal\"\n}<\/code><\/pre>\n\n\n\n<p><strong>Boucle For :<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">$processes = Get-Process\n\nfor($i = 0; $i -lt $processes.length; $i++) {\n  Write-Host $processes[$i]\n}<\/code><\/pre>\n\n\n\n<p><strong>Fonctions :<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">function Get-TopProcesses {\n  Get-Process | Sort-Object -Property CPU -Descending | Select-Object -First 10 \n}\n\nGet-TopProcesses<\/code><\/pre>\n\n\n\n<p>Ces exemples d\u00e9montrent comment PowerShell permet aux administrateurs d&#8217;utiliser des constructions de programmation pour le scripting, le contr\u00f4le de flux et les it\u00e9rations.<\/p>\n\n\n\n<p>Passons maintenant \u00e0 la fa\u00e7on dont nous pouvons utiliser ces concepts au niveau sup\u00e9rieur avec le scripting.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"scripting-avec-powershell\">Scripting avec PowerShell<\/h2>\n\n\n\n<p>L&#8217;une des principales forces de PowerShell est ses capacit\u00e9s de script pour l&#8217;automatisation et le traitement par lots. Les scripts PowerShell contiennent des commandes dans un document PowerShell enregistr\u00e9 avec une extension&nbsp;<code>.ps1<\/code>.<\/p>\n\n\n\n<p>Les scripts offrent des avantages tels que :<\/p>\n\n\n\n<ul>\n<li>Automatisation des t\u00e2ches r\u00e9p\u00e9titives<\/li>\n\n\n\n<li>Encourage la r\u00e9utilisation pour assurer la coh\u00e9rence<\/li>\n\n\n\n<li>Permet une ex\u00e9cution non interactive<\/li>\n\n\n\n<li>Centralise les proc\u00e9dures et les strat\u00e9gies<\/li>\n\n\n\n<li>Permet le contr\u00f4le de version et le partage<\/li>\n<\/ul>\n\n\n\n<p>Voyons un exemple simple de script PowerShell qui imprime un message et ex\u00e9cute une s\u00e9rie de commandes :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\"># Exemple de script PowerShell\n\nWrite-Host \"Ex\u00e9cution du script PowerShell !\"\n\nGet-Service -Name 'Bits' \n\nStart-Service -Name 'Bits'\nWrite-Host \"Service Bits d\u00e9marr\u00e9.\"\n\nGet-Process -Name 'Outlook'\nStop-Process -Name 'Outlook'<\/code><\/pre>\n\n\n\n<p>Cela imprime un message, r\u00e9cup\u00e8re l&#8217;\u00e9tat du service Bits, le d\u00e9marre, puis arr\u00eate tous les processus Outlook en cours d&#8217;ex\u00e9cution.<\/p>\n\n\n\n<p>Pour ex\u00e9cuter le script, ex\u00e9cutez :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">PS C:\\&gt; .\\monScript.ps1<\/code><\/pre>\n\n\n\n<p>O\u00f9&nbsp;<code>monScript.ps1<\/code>&nbsp;est le nom de notre script d&#8217;exemple.<\/p>\n\n\n\n<p>Les scripts peuvent utiliser toute la syntaxe de programmation dont nous avons discut\u00e9 comme les variables, les conditions, les boucles, les fonctions, les classes, etc. Ils prennent en charge le passage d&#8217;arguments pour les scripts param\u00e9tr\u00e9s.<\/p>\n\n\n\n<p>Par exemple :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">param(\n  [string]$NomService\n)\n\nGet-Service -Name $NomService \n\nif ((Get-Service -Name $NomService).Status -ne 'Running') {\n  Start-Service -Name $NomService\n  Write-Host \"Service $NomService d\u00e9marr\u00e9\" \n}<\/code><\/pre>\n\n\n\n<p>Cela d\u00e9finit un param\u00e8tre&nbsp;<code>$NomService<\/code>&nbsp;qui est transmis lors de l&#8217;appel du script. Le script recherche l&#8217;\u00e9tat du service et le d\u00e9marre conditionnellement s&#8217;il n&#8217;est pas d\u00e9j\u00e0 en cours d&#8217;ex\u00e9cution.<\/p>\n\n\n\n<p>Pour ex\u00e9cuter un script param\u00e9tr\u00e9 :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">PS C:\\&gt; .\\Start-Service.ps1 -NomService 'Bits'<\/code><\/pre>\n\n\n\n<p>Cela transmet &#8216;Bits&#8217; au param\u00e8tre&nbsp;<code>$NomService<\/code>.<\/p>\n\n\n\n<p>De cette fa\u00e7on, PowerShell fournit des outils extr\u00eamement robustes pour le scripting des t\u00e2ches administratives.<\/p>\n\n\n\n<p>Regardons maintenant comment nous pouvons utiliser PowerShell pour automatiser les flux de travail et les processus sous Windows.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"automatisation-des-t%C3%A2ches-avec-powershell\">Automatisation des t\u00e2ches avec PowerShell<\/h2>\n\n\n\n<p>L&#8217;un des principaux avantages de PowerShell est sa capacit\u00e9 \u00e0 automatiser les workflows pour effectuer des t\u00e2ches r\u00e9p\u00e9titives. Quelques exemples incluent :<\/p>\n\n\n\n<ul>\n<li>Cr\u00e9ation de comptes utilisateur en masse<\/li>\n\n\n\n<li>Approvisionnement automatis\u00e9 de serveurs<\/li>\n\n\n\n<li>D\u00e9ploiement logiciel par lot<\/li>\n\n\n\n<li>Processus de sauvegarde nocturne<\/li>\n\n\n\n<li>Planification des t\u00e2ches<\/li>\n<\/ul>\n\n\n\n<p>PowerShell rend facile le scripting de ces proc\u00e9dures et leur d\u00e9clenchement \u00e0 la demande ou selon une planification.<\/p>\n\n\n\n<p>Par exemple, pour automatiser une sauvegarde de fichiers nocturne :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\"># Sauvegarde-Fichiers.ps1\n\n$dossierSauvegarde = \"D:\\Sauvegardes\"\n$dossiers = Get-ChildItem -Path \"C:\\Users\" \n\nforeach ($dossier in $dossiers) {\n  $fromPath = $dossier.FullName\n  $toPath = Join-Path -Path $dossierSauvegarde -ChildPath $dossier.Name\n\n  Copy-Item -Path $fromPath -Destination $toPath -Recurse -Force\n\n  Write-Host \"Sauvegard\u00e9 $fromPath vers $toPath\"\n}<\/code><\/pre>\n\n\n\n<p>Cela parcourt les dossiers utilisateur, les copie dans un emplacement de sauvegarde et consigne la sortie.<\/p>\n\n\n\n<p>Nous pourrions ensuite le planifier pour s&#8217;ex\u00e9cuter chaque nuit avec le Planificateur de t\u00e2ches en utilisant un d\u00e9clencheur comme :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">D\u00e9clencheur : Quotidien\n\u00c0 : 23h\nR\u00e9p\u00e9ter : Ind\u00e9finiment <\/code><\/pre>\n\n\n\n<p>Pour le d\u00e9ploiement de logiciels, PowerShell fournit des applets de commande comme&nbsp;<code>Install-Package<\/code>&nbsp;pour d\u00e9ployer des packages MSI :<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">$packages = @('package1.msi', 'package2.msi')\n\nforeach ($package in $packages) {\n  Write-Host \"Installation du package : $package\"\n  Start-Process msiexec.exe -ArgumentList \"\/i $package \/quiet\" -Wait\n}<\/code><\/pre>\n\n\n\n<p>Cela parcourt un tableau de packages, imprime un message et les installe silencieusement via&nbsp;<code>msiexec.exe<\/code>.<\/p>\n\n\n\n<p>PowerShell permet d&#8217;automatiser presque sans effort les processus IT r\u00e9currents comme les sauvegardes, les d\u00e9ploiements, la configuration des utilisateurs, etc. Voyons ensuite comment g\u00e9rer les services Windows de base avec PowerShell.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"gestion-de-windows-avec-powershell\">Gestion de Windows avec PowerShell<\/h2>\n\n\n\n<p>En plus de l&#8217;automatisation, PowerShell est extr\u00eamement utile pour g\u00e9rer les serveurs, les postes de travail et les applications Windows. Pratiquement tous les aspects de l&#8217;administration Windows sont contr\u00f4lables via des applets de commande PowerShell.<\/p>\n\n\n\n<p>Quelques exemples incluent :<\/p>\n\n\n\n<p><strong>Services :<\/strong><\/p>\n\n\n\n<ul>\n<li><code>Get-Service<\/code>&nbsp;&#8211; Obtenir le statut du service<\/li>\n\n\n\n<li><code>Start-Service<\/code>&nbsp;&#8211; D\u00e9marrer un service<\/li>\n\n\n\n<li><code>Stop-Service<\/code>&nbsp;&#8211; Arr\u00eater un service en cours d&#8217;ex\u00e9cution<\/li>\n\n\n\n<li><code>Restart-Service<\/code>&nbsp;&#8211; Red\u00e9marrer un service<\/li>\n\n\n\n<li><code>New-Service<\/code>&nbsp;&#8211; Cr\u00e9er un nouveau service<\/li>\n<\/ul>\n\n\n\n<p><strong>Processus :<\/strong><\/p>\n\n\n\n<ul>\n<li><code>Get-Process<\/code>&nbsp;&#8211; Lister les processus en cours d&#8217;ex\u00e9cution<\/li>\n\n\n\n<li><code>Stop-Process<\/code>&nbsp;&#8211; Arr\u00eater un processus<\/li>\n\n\n\n<li><code>Start-Process<\/code>&nbsp;&#8211; D\u00e9marrer un nouveau processus<\/li>\n\n\n\n<li><code>Wait-Process<\/code>&nbsp;&#8211; Attendre la fin d&#8217;un processus<\/li>\n<\/ul>\n\n\n\n<p><strong>Journaux d&#8217;\u00e9v\u00e9nements :<\/strong><\/p>\n\n\n\n<ul>\n<li><code>Get-EventLog<\/code>&nbsp;&#8211; R\u00e9cup\u00e9rer les journaux d&#8217;\u00e9v\u00e9nements Windows<\/li>\n\n\n\n<li><code>Clear-EventLog<\/code>&nbsp;&#8211; Vider un journal d&#8217;\u00e9v\u00e9nements<\/li>\n\n\n\n<li><code>Write-EventLog<\/code>&nbsp;&#8211; \u00c9crire un \u00e9v\u00e9nement dans un journal<\/li>\n<\/ul>\n\n\n\n<p><strong>Mises \u00e0 jour Windows :<\/strong><\/p>\n\n\n\n<ul>\n<li><code>Get-WindowsUpdate<\/code>&nbsp;&#8211; Afficher les mises \u00e0 jour disponibles<\/li>\n\n\n\n<li><code>Install-WindowsUpdate<\/code>&nbsp;&#8211; Installer des mises \u00e0 jour<\/li>\n<\/ul>\n\n\n\n<p><strong>Mise en r\u00e9seau :<\/strong><\/p>\n\n\n\n<ul>\n<li><code>Get-NetIPConfiguration<\/code>&nbsp;&#8211; Afficher les param\u00e8tres d&#8217;adresse IP<\/li>\n\n\n\n<li><code>Set-DNSClientServerAddress<\/code>&nbsp;&#8211; D\u00e9finir les serveurs DNS<\/li>\n\n\n\n<li><code>Test-NetConnection<\/code>&nbsp;&#8211; Tester la connectivit\u00e9 r\u00e9seau<\/li>\n<\/ul>\n\n\n\n<p><strong>Active Directory :<\/strong><\/p>\n\n\n\n<ul>\n<li><code>Get-ADUser<\/code>&nbsp;&#8211; Requ\u00eater les utilisateurs AD<\/li>\n\n\n\n<li><code>New-ADUser<\/code>&nbsp;&#8211; Cr\u00e9er un nouvel utilisateur AD<\/li>\n\n\n\n<li><code>Set-ADUser<\/code>&nbsp;&#8211; Modifier un utilisateur AD<\/li>\n\n\n\n<li><code>Remove-ADUser<\/code>&nbsp;&#8211; Supprimer un utilisateur AD<\/li>\n<\/ul>\n\n\n\n<p><strong>Syst\u00e8me de fichiers :<\/strong><\/p>\n\n\n\n<ul>\n<li><code>Get-ChildItem<\/code>&nbsp;&#8211; Lister les fichiers et dossiers<\/li>\n\n\n\n<li><code>Copy-Item<\/code>&nbsp;&#8211; Copier des fichiers et dossiers<\/li>\n\n\n\n<li><code>Move-Item<\/code>&nbsp;&#8211; D\u00e9placer des fichiers et dossiers<\/li>\n\n\n\n<li><code>Remove-Item<\/code>&nbsp;&#8211; Supprimer des fichiers et dossiers<\/li>\n<\/ul>\n\n\n\n<p>Cette liste donne un petit \u00e9chantillon des t\u00e2ches d&#8217;administration qui peuvent \u00eatre g\u00e9r\u00e9es via des applets de commande PowerShell. Tout composant avec une instrumentation de gestion expos\u00e9e via .NET peut \u00eatre utilis\u00e9 depuis la ligne de commande.<\/p>\n\n\n\n<p>Voyons quelques exemples d&#8217;utilisation pour g\u00e9rer les services avec PowerShell :<\/p>\n\n\n\n<p><strong>Obtenir le statut du service d&#8217;impression :<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">PS C:\\&gt; Get-Service -Name 'Spooler'<\/code><\/pre>\n\n\n\n<p><strong>Red\u00e9marrer un service arr\u00eat\u00e9 :<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">PS C:\\&gt; Restart-Service -Name 'Spooler' <\/code><\/pre>\n\n\n\n<p><strong>D\u00e9sactiver un service :<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">PS C:\\&gt; Set-Service -Name 'BITS' -StartupType Disabled<\/code><\/pre>\n\n\n\n<p><strong>Cr\u00e9er un nouveau service de surveillance de syst\u00e8me de fichiers :<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"powershell\" class=\"language-powershell\">PS C:\\&gt; New-Service -Name 'FileWatcher' -BinaryPathName 'C:\\FileWatcher.exe'<\/code><\/pre>\n\n\n\n<p>Ces exemples montrent comment PowerShell vous permet de contr\u00f4ler directement les composants Windows comme les services, les processus, les mises \u00e0 jour, la mise en r\u00e9seau, les journaux, AD, le syst\u00e8me de fichiers, etc.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"bonnes-pratiques-pour-le-scripting-powershell\">Bonnes pratiques pour le scripting PowerShell<\/h2>\n\n\n\n<p>Lors du d\u00e9veloppement de scripts PowerShell pour l&#8217;automatisation et l&#8217;administration, suivre les bonnes pratiques permet de cr\u00e9er du code robuste, fiable et maintenable. Quelques conseils incluent :<\/p>\n\n\n\n<ul>\n<li>Ajouter une aide bas\u00e9e sur des commentaires pour documenter les scripts<\/li>\n\n\n\n<li>Tirer parti des scripts param\u00e9tr\u00e9s avec validation des entr\u00e9es<\/li>\n\n\n\n<li>Utiliser une nommage verbe-nom coh\u00e9rent pour les fonctions personnalis\u00e9es<\/li>\n\n\n\n<li>\u00c9viter les valeurs cod\u00e9es en dur, utiliser des variables \u00e0 la place<\/li>\n\n\n\n<li>G\u00e9rer les erreurs avec gr\u00e2ce via des blocs try\/catch<\/li>\n\n\n\n<li>Permettre l&#8217;ex\u00e9cution des scripts de mani\u00e8re non interactive avec -NoProfile<\/li>\n\n\n\n<li>Formater la sortie pour la lisibilit\u00e9 avec des espaces, des sauts de ligne et du texte<\/li>\n\n\n\n<li>Toujours tester minutieusement les scripts avant une utilisation en production<\/li>\n\n\n\n<li>Utiliser le contr\u00f4le de version comme Git pour le suivi des modifications<\/li>\n\n\n\n<li>Stocker les scripts dans un r\u00e9f\u00e9rentiel sous contr\u00f4le de source<\/li>\n\n\n\n<li>Limiter l&#8217;exposition des droits &#8211; \u00e9viter d&#8217;utiliser des comptes Admin dans les scripts<\/li>\n\n\n\n<li>Ne pas exposer de mots de passe ou de secrets dans les scripts<\/li>\n\n\n\n<li>Appeler les scripts \u00e0 partir de scripts wrapper pour la coh\u00e9rence<\/li>\n<\/ul>\n\n\n\n<p>L&#8217;adoption de normes et de bonnes pratiques pour les scripts PowerShell vous sera utile au fil du temps et permettra aux autres de comprendre et de tirer parti de votre code.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"conclusion\">Conclusion<\/h2>\n\n\n\n<p>Dans ce guide, nous avons couvert les bases de PowerShell pour l&#8217;administration et l&#8217;automatisation des t\u00e2ches dans les environnements Windows. Les sujets cl\u00e9s incluaient :<\/p>\n\n\n\n<ul>\n<li>Pr\u00e9sentation de PowerShell et de ses capacit\u00e9s<\/li>\n\n\n\n<li>Installation et configuration de PowerShell<\/li>\n\n\n\n<li>Syntaxe PowerShell, applets de commande et pipelines<\/li>\n\n\n\n<li>Scripting avec PowerShell pour l&#8217;automatisation<\/li>\n\n\n\n<li>Gestion des services, processus et composants Windows<\/li>\n\n\n\n<li>Bonnes pratiques pour l&#8217;\u00e9criture de scripts PowerShell<\/li>\n<\/ul>\n\n\n\n<p>Avec son interface de ligne de commande robuste, son int\u00e9gration .NET et son langage de script universel, vous pouvez contr\u00f4ler presque tous les aspects des syst\u00e8mes Windows et r\u00e9soudre des probl\u00e8mes concrets.<\/p>\n\n\n\n<p>J&#8217;esp\u00e8re que cet article fournit une solide base pour tirer parti des capacit\u00e9s de PowerShell pour la gestion des serveurs et des postes de travail. Les comp\u00e9tences PowerShell sont pr\u00e9cieuses pour les administrateurs Windows cherchant \u00e0 r\u00e9duire les t\u00e2ches r\u00e9p\u00e9titives et \u00e0 am\u00e9liorer l&#8217;efficacit\u00e9.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>PowerShell est un shell de ligne de commande et un langage de script qui permet aux professionnels de l&#8217;informatique d&#8217;automatiser les t\u00e2ches administratives sous Windows. Avec PowerShell, vous pouvez g\u00e9rer les serveurs Windows, les postes de travail, les applications et les services de mani\u00e8re efficace via une interface de ligne de commande simple. Dans ce ..<\/p>\n<div class=\"clear-fix\"><\/div>\n<p><a href=\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/\" title=\"read more...\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[45],"tags":[],"yoast_head":"\n<title>Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l&#039;administration Windows - WebHi Tutorials &amp; Documentations<\/title>\n<meta name=\"description\" content=\"D\u00e9couvrir comment utiliser PowerShell pour automatiser les diff\u00e9rentes t\u00e2ches dans l&#039;administration Windows. Am\u00e9liorez votre efficacit\u00e9 et rationalisez les processus gr\u00e2ce \u00e0 l&#039;\u00e9criture de scripts PowerShell.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l&#039;administration Windows - WebHi Tutorials &amp; Documentations\" \/>\n<meta property=\"og:description\" content=\"D\u00e9couvrir comment utiliser PowerShell pour automatiser les diff\u00e9rentes t\u00e2ches dans l&#039;administration Windows. Am\u00e9liorez votre efficacit\u00e9 et rationalisez les processus gr\u00e2ce \u00e0 l&#039;\u00e9criture de scripts PowerShell.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/\" \/>\n<meta property=\"og:site_name\" content=\"WebHi Tutorials &amp; Documentations\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webhi.technology\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-01T12:10:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-09-01T12:10:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.webhi.com\/how-to\/gilrogre\/2023\/08\/win_powershell_fr.jpg\" \/>\n<meta name=\"author\" content=\"webhi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@WebHiTechnology\" \/>\n<meta name=\"twitter:site\" content=\"@WebHiTechnology\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"webhi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/\"},\"author\":{\"name\":\"webhi\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/#\/schema\/person\/b31e76e2311cdc0bb90f5e2733059a54\"},\"headline\":\"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l&#8217;administration Windows\",\"datePublished\":\"2023-09-01T12:10:19+00:00\",\"dateModified\":\"2023-09-01T12:10:21+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/\"},\"wordCount\":2077,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\/\/www.webhi.com\/how-to\/#organization\"},\"articleSection\":[\"Administration syst\u00e8me Windows\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/\",\"url\":\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/\",\"name\":\"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l'administration Windows - WebHi Tutorials &amp; Documentations\",\"isPartOf\":{\"@id\":\"https:\/\/www.webhi.com\/how-to\/#website\"},\"datePublished\":\"2023-09-01T12:10:19+00:00\",\"dateModified\":\"2023-09-01T12:10:21+00:00\",\"description\":\"D\u00e9couvrir comment utiliser PowerShell pour automatiser les diff\u00e9rentes t\u00e2ches dans l'administration Windows. Am\u00e9liorez votre efficacit\u00e9 et rationalisez les processus gr\u00e2ce \u00e0 l'\u00e9criture de scripts PowerShell.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.webhi.com\/how-to\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l&#8217;administration Windows\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/#website\",\"url\":\"https:\/\/www.webhi.com\/how-to\/\",\"name\":\"WebHi Tutorials &amp; Documentations\",\"description\":\"System administration and knowledge base\",\"publisher\":{\"@id\":\"https:\/\/www.webhi.com\/how-to\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.webhi.com\/how-to\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/#organization\",\"name\":\"WebHi Technology\",\"url\":\"https:\/\/www.webhi.com\/how-to\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.webhi.com\/how-to\/gilrogre\/2022\/07\/logo.png\",\"contentUrl\":\"https:\/\/www.webhi.com\/how-to\/gilrogre\/2022\/07\/logo.png\",\"width\":288,\"height\":95,\"caption\":\"WebHi Technology\"},\"image\":{\"@id\":\"https:\/\/www.webhi.com\/how-to\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webhi.technology\",\"https:\/\/twitter.com\/WebHiTechnology\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/#\/schema\/person\/b31e76e2311cdc0bb90f5e2733059a54\",\"name\":\"webhi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webhi.com\/how-to\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.webhi.com\/how-to\/ahuphiph\/litespeed\/avatar\/e20da107d0f4c765ead2eef88ad019d8.jpg?ver=1784239260\",\"contentUrl\":\"https:\/\/www.webhi.com\/how-to\/ahuphiph\/litespeed\/avatar\/e20da107d0f4c765ead2eef88ad019d8.jpg?ver=1784239260\",\"caption\":\"webhi\"},\"sameAs\":[\"https:\/\/www.webhi.com\/how-to\"],\"url\":\"https:\/\/www.webhi.com\/how-to\/author\/webhi\/\"}]}<\/script>\n","yoast_head_json":{"title":"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l'administration Windows - WebHi Tutorials &amp; Documentations","description":"D\u00e9couvrir comment utiliser PowerShell pour automatiser les diff\u00e9rentes t\u00e2ches dans l'administration Windows. Am\u00e9liorez votre efficacit\u00e9 et rationalisez les processus gr\u00e2ce \u00e0 l'\u00e9criture de scripts PowerShell.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/","og_locale":"en_US","og_type":"article","og_title":"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l'administration Windows - WebHi Tutorials &amp; Documentations","og_description":"D\u00e9couvrir comment utiliser PowerShell pour automatiser les diff\u00e9rentes t\u00e2ches dans l'administration Windows. Am\u00e9liorez votre efficacit\u00e9 et rationalisez les processus gr\u00e2ce \u00e0 l'\u00e9criture de scripts PowerShell.","og_url":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/","og_site_name":"WebHi Tutorials &amp; Documentations","article_publisher":"https:\/\/www.facebook.com\/webhi.technology","article_published_time":"2023-09-01T12:10:19+00:00","article_modified_time":"2023-09-01T12:10:21+00:00","og_image":[{"url":"https:\/\/www.webhi.com\/how-to\/gilrogre\/2023\/08\/win_powershell_fr.jpg"}],"author":"webhi","twitter_card":"summary_large_image","twitter_creator":"@WebHiTechnology","twitter_site":"@WebHiTechnology","twitter_misc":{"Written by":"webhi","Est. reading time":"12 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"TechArticle","@id":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/#article","isPartOf":{"@id":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/"},"author":{"name":"webhi","@id":"https:\/\/www.webhi.com\/how-to\/#\/schema\/person\/b31e76e2311cdc0bb90f5e2733059a54"},"headline":"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l&#8217;administration Windows","datePublished":"2023-09-01T12:10:19+00:00","dateModified":"2023-09-01T12:10:21+00:00","mainEntityOfPage":{"@id":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/"},"wordCount":2077,"commentCount":1,"publisher":{"@id":"https:\/\/www.webhi.com\/how-to\/#organization"},"articleSection":["Administration syst\u00e8me Windows"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/","url":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/","name":"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l'administration Windows - WebHi Tutorials &amp; Documentations","isPartOf":{"@id":"https:\/\/www.webhi.com\/how-to\/#website"},"datePublished":"2023-09-01T12:10:19+00:00","dateModified":"2023-09-01T12:10:21+00:00","description":"D\u00e9couvrir comment utiliser PowerShell pour automatiser les diff\u00e9rentes t\u00e2ches dans l'administration Windows. Am\u00e9liorez votre efficacit\u00e9 et rationalisez les processus gr\u00e2ce \u00e0 l'\u00e9criture de scripts PowerShell.","breadcrumb":{"@id":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.webhi.com\/how-to\/fr\/fondamentaux-de-powershell-automatisation-des-taches-administration-windows-server\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.webhi.com\/how-to\/"},{"@type":"ListItem","position":2,"name":"Fondamentaux de PowerShell : Automatisation des t\u00e2ches dans l&#8217;administration Windows"}]},{"@type":"WebSite","@id":"https:\/\/www.webhi.com\/how-to\/#website","url":"https:\/\/www.webhi.com\/how-to\/","name":"WebHi Tutorials &amp; Documentations","description":"System administration and knowledge base","publisher":{"@id":"https:\/\/www.webhi.com\/how-to\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.webhi.com\/how-to\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.webhi.com\/how-to\/#organization","name":"WebHi Technology","url":"https:\/\/www.webhi.com\/how-to\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webhi.com\/how-to\/#\/schema\/logo\/image\/","url":"https:\/\/www.webhi.com\/how-to\/gilrogre\/2022\/07\/logo.png","contentUrl":"https:\/\/www.webhi.com\/how-to\/gilrogre\/2022\/07\/logo.png","width":288,"height":95,"caption":"WebHi Technology"},"image":{"@id":"https:\/\/www.webhi.com\/how-to\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webhi.technology","https:\/\/twitter.com\/WebHiTechnology"]},{"@type":"Person","@id":"https:\/\/www.webhi.com\/how-to\/#\/schema\/person\/b31e76e2311cdc0bb90f5e2733059a54","name":"webhi","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webhi.com\/how-to\/#\/schema\/person\/image\/","url":"https:\/\/www.webhi.com\/how-to\/ahuphiph\/litespeed\/avatar\/e20da107d0f4c765ead2eef88ad019d8.jpg?ver=1784239260","contentUrl":"https:\/\/www.webhi.com\/how-to\/ahuphiph\/litespeed\/avatar\/e20da107d0f4c765ead2eef88ad019d8.jpg?ver=1784239260","caption":"webhi"},"sameAs":["https:\/\/www.webhi.com\/how-to"],"url":"https:\/\/www.webhi.com\/how-to\/author\/webhi\/"}]}},"_links":{"self":[{"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/posts\/6456"}],"collection":[{"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/comments?post=6456"}],"version-history":[{"count":7,"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/posts\/6456\/revisions"}],"predecessor-version":[{"id":6478,"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/posts\/6456\/revisions\/6478"}],"wp:attachment":[{"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/media?parent=6456"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/categories?post=6456"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webhi.com\/how-to\/wp-json\/wp\/v2\/tags?post=6456"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}