Windows PowerShell vous permet d’automatiser n’importe quoi sur votre PC : Ici's Comment commencer
Et si votre ordinateur pouvait se charger des tâches ennuyeuses à votre place ? Avec Windows PowerShell, c’est possible. Voici comment j’utilise PowerShell pour automatiser des tâches quotidiennes répétitives que je serais moins enclin à effectuer autrement.
Qu’est-ce que Windows PowerShell ?
PowerShell est un shell de ligne de commande et un langage de script intégré à Windows qui peut vous aider à automatiser des tâches administratives et répétitives. Si vous l’avez déjà utilisé, il vous est peut-être déjà familier. Mais si vous ne le connaissez pas encore, ne vous inquiétez pas : PowerShell est facile à prendre en main.
Avec PowerShell, vous pouvez écrire des scripts pour effectuer des tâches quotidiennes telles que l’organisation des fichiers en dossiers par type, le téléchargement de mises à jour lorsque vous dormez ou la création d’un rapport sur la taille du disque pour connaître l’espace restant sur votre ordinateur.
Bien entendu, PowerShell peut faire beaucoup plus. Mais dans ce guide, nous nous en tiendrons aux bases afin que vous puissiez comprendre ses principes fondamentaux. Nous créerons également des scripts PowerShell simples et un projet amusant qui vous permettra d’organiser tous les fichiers du dossier Téléchargements en fonction de leur type.
Comprendre les bases de PowerShell
Pour maîtriser PowerShell, vous devez d’abord comprendre ses principaux composants :
- Cmdlets: Les cmdlets (prononcés comme command lets) sont des commandes simples à usage unique. Par exemple, tapez Obtenir la date pour récupérer le jour, la date, l’année et les heures en cours.
- Scripts et pipelines: Un script PowerShell est une combinaison de commandes, séparées par un opérateur de pipe (|), pour relier les commandes et transmettre la sortie d’une commande comme entrée de la commande suivante. Par exemple, tapez la commande suivante pour récupérer une liste de processus triés par utilisation du processeur :
- Objets: PowerShell produit des objets plutôt que du texte brut, ce qui facilite la manipulation des données. Par exemple, tapez la commande suivante pour récupérer la date et l’heure actuelles sous la forme d’un objet doté de propriétés spécifiques :
- Filtrage et formatage: Utiliser Where-Object pour le filtrage et Format-Table ou Format-List pour obtenir un résultat personnalisé. Par exemple, tapez la commande suivante pour trouver les fichiers de plus de 50 Mo dans votre fichier Téléchargements et afficher leur nom et leur taille dans un tableau :
Parmi les autres cmdlets PowerShell essentielles, citons Get-Help pour en savoir plus sur n’importe quelle cmdlet, Get-Command pour obtenir une liste de commandes, et Get-ChildItem pour explorer les fichiers et dossiers d’un répertoire.
Nous vous recommandons vivement de lire notre guide sur les commandes PowerShell essentielles et les scripts Windows PowerShell pour en savoir plus sur les commandes et les bases des scripts. Il vous aidera à aller au-delà des bases et à approfondir tout ce que PowerShell peut faire.
Écrire des scripts PowerShell simples
Vous pouvez utiliser PowerShell pour automatiser presque tout, comme renommer par lots des fichiers pour en assurer la cohérence ou automatiser le lancement d’applications. Écrivons quelques scripts Windows PowerShell simples pour les voir à l’œuvre.
Si vous rencontrez une erreur lors de l’exécution d’un script concernant la politique d’exécution, vous devrez peut-être autoriser temporairement l’exécution du script en exécutant »Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass »
Renommer par lots les fichiers d’un dossier
Vous pouvez utiliser PowerShell pour copier, déplacer et supprimer des fichiers sur votre PC. Vous pouvez également renommer par lots des fichiers de types spécifiques. Par exemple, voici comment vous pouvez renommer plusieurs fichiers texte en remplaçant le préfixe « oldco » par « newco » dans leurs noms de fichiers :
Dans le script ci-dessus, « .txt« est le filtre d’extension de fichier. Vous pouvez le modifier et le définir sur .jpg, .docx, etc, pour rechercher différents types de fichiers.
Automatiser le lancement des applications
Si vous ouvrez le même ensemble d’applications tous les jours, vous pouvez écrire un script PowerShell pour les lancer en un seul clic :
Collez le script dans un fichier Notepad et enregistrez-le sous le nom de LaunchFavoriteApps.ps1. Ensuite, il suffit de double-cliquer sur le fichier pour lancer toutes les applications répertoriées dans le script
Copier les fichiers importants dans un emplacement de sauvegarde
Vous pouvez sauvegarder périodiquement des fichiers importants dans un emplacement de sauvegarde à l’aide du script suivant. Veillez à modifier les chemins d’accès de la source et de la destination si nécessaire :
Rédaction d’un script PowerShell pour automatiser l’organisation quotidienne des fichiers
En raison des nombreux types de fichiers que nous téléchargeons chaque jour, le fichier Téléchargements peut rapidement devenir un véritable fouillis avec toutes sortes de fichiers éparpillés. Pour y remédier, nous pouvons écrire un script PowerShell qui organise les fichiers téléchargés dans des dossiers par type de fichier à la fin de chaque journée.
Ouvrez un nouveau fichier Notepad et collez le script suivant. Veillez à modifier le chemin du dossier source dans le script pour qu’il corresponde à votre fichier Téléchargements de votre dossier de téléchargements :
Pour enregistrer le fichier, cliquez sur Fichier > Enregistrer sous et tapez OrganizeDownloadsFolder.ps1 comme nom de fichier. Cliquez ensuite sur Enregistrer sous Type et sélectionnez Tous les fichiers. Double-cliquez sur le fichier Organiser le dossier des téléchargements.ps1 pour exécuter le script.
Planification et exécution des tâches
Bien entendu, l’écriture d’un script ne constitue qu’une partie du processus d’automatisation. La deuxième partie consiste à s’assurer que le script peut s’exécuter automatiquement pour réaliser la tâche. Pour ce faire, nous pouvons créer des tâches planifiées pour exécuter un script quotidiennement ou selon les besoins.
Ouvrez PowerShell, puis copiez et collez le script suivant et appuyez sur Entrez. Veillez à remplacer J:NOrganizeDownloadsFolder.ps1‘ avec le chemin d’accès complet à votre fichier OrganizeDownloadsFolder.ps1 script.
Une fois que vous avez terminé, appuyez sur la touche Entrée. Le script créera une tâche planifiée dans le répertoire Planificateur de tâches pour exécuter le script d’organisation des fichiers tous les jours à 17 heures. Si vous préférez une autre heure, vous pouvez la modifier dans le script ci-dessus.
En outre, vous pouvez utiliser PowerShell pour automatiser d’autres tâches quotidiennes, telles qu’un script de surveillance de l’espace qui vous avertit lorsque vous manquez d’espace libre sur votre disque principal, la protection par mot de passe en bloc de documents PDF et même l’application dynamique de fonds d’écran à partir d’un dossier d’images.
Comment faire de l’automatisation dans PowerShell ?
Suivez le principe du moindre privilège. Suivez le principe du moindre privilège lorsque vous exécutez des scripts PowerShell. Veillez à ce que le compte d’utilisateur ou de service qui exécute le script dispose des autorisations minimales nécessaires pour mener à bien la tâche. Dans la mesure du possible, évitez d’utiliser des comptes à privilèges élevés.
Pourquoi Windows PowerShell n’arrête-t-il pas de s’afficher ?
L’apparition régulière de fenêtres PowerShell dans le contexte de votre compte d’utilisateur connecté n’est pas normale et peut être le signe d’une infection par un logiciel malveillant.
Comment commencer à utiliser PowerShell ?
Pour lancer Powershell, sélectionnez le bouton Démarrer de Windows et tapez « Powershell » dans la barre de recherche. Vous devriez voir au moins deux applications différentes portant le nom « PowerShell ». Windows PowerShell et Windows PowerShell ISE (je vous expliquerai cela dans la partie 2 de cette mini-série).
ChatGPT connaît-il PowerShell ?
Avec des outils comme ChatGPT et GitHub Copilot, l’écriture de scripts PowerShell est devenue plus intuitive, plus efficace et plus puissante, ce qui se traduit par de meilleures fonctionnalités.