Sortie d'informations hors null ou supprimant la sortie de Windows PowerShell. Afficher la notification aux utilisateurs utilisant PowerShell Affichage des informations sur l'exécution réussie de la commande PowerShell
PowerShell. - Il s'agit d'un moteur logiciel orienté objet et d'une langue de script avec une interface de ligne de commande qui offre aux professionnels informatiques plus de possibilités de configurer les systèmes d'exploitation de la famille MS Windows. Mettez simplement, c'est une sorte d'outil d'administration universel. Cet article examinera les scripts de base pour écrire des scripts à PowerShell, permettant ainsi une simple façon d'automatiser la gestion de l'environnement Windows.
PowerShell propose à la fois une interface purement console et un environnement de développement à part entière. PowerShell Ise. Environnement de script intégré, surface scriptée intégrée) pour les scripts. Pour lancer l'interface de ligne de commande, entrez PowerShell dans le menu "Exécuter" (WinKey + R). PowerShell Ise commence à utiliser la commande PowerShell Ise dans le même menu.
Ise est plus préférablement, puisqu'il fournit plus d'opportunités au développeur grâce à la mise en évidence de la syntaxe, aux fonctions auto-complètes du code et autres fonctionnalités inhérentes à de nombreux "grands" IDE.
Écrire et lancer des scripts
Les scripts sont enregistrés en tant que fichiers avec extension.ps1. Malgré le fait que PowerShell a longtemps été une partie natale de Windows, vous ne pourrez pas la démarrer avec un simple double clic. Pour ce faire, cliquez sur le bouton droit de la souris sur le script et sélectionnez "Exécuter à PowerShell".
Il existe également des politiques système qui limitent l'exécution des scripts. Vous pouvez vérifier les paramètres de stratégie actuels en entrant la commande Get-ExecuVollyPolicy. Le résultat sera l'une des valeurs suivantes:
- Limité - L'exécution des scripts est interdite. Configuration standard;
- Allsigned. - Vous pouvez exécuter des scripts signés par un développeur de confiance; Avant de commencer le script PowerShell, vous vous demanderez de confirmation.
- Télévisé. - Vous pouvez exécuter vos propres scripts ou ceux signés par un développeur de confiance;
- Libre - Vous pouvez exécuter des scripts.
Pour commencer, il est nécessaire de modifier le paramètre de démarrage sur les télécommandés à l'aide de la commande Set-ExecuVollyPolicy:
Clelyt
Les tasses sont des commandes avec une fonction prédéterminée similaire aux opérateurs conditionnels dans les langages de programmation. Ils ont plusieurs caractéristiques clés:
- il existe des cmdlets système, utilisateur et optionnels;
- le résultat de l'exécution de la cmdlet sera un objet ou un éventail d'objets;
- les cmdlets peuvent traiter les données et les transmettre à d'autres PMDDers à l'aide de convoyeurs;
- les tasses sont insensibles au registre. Il n'y a donc pas de différence entre Get-Aduser, Get-Aduser et Get-Aduser;
- un symbole est utilisé comme séparateur; .
Chaque cmdlet contient un verbe et un nom divisé par un trait d'union. Par example:
- Get-processus. - Afficher les processus de courant exécutés sur l'ordinateur;
- Get-Service. - afficher une liste de services et leur statut;
- Obtenir du contenu - Affichez le contenu du fichier spécifié, par exemple, Get-Content C: \\ Windows \\ System32 \\ pilotes \\ etc \\ hosts.
Si nécessaire, une liste de toutes les CMDlets disponibles peut être affichée à l'aide de Get-Help-Catégorie:
Vous pouvez également créer vos propres cmdlets.
Paramètres
Chaque cmdlet a plusieurs paramètres définissant son travail. PowerShell Ise offre automatiquement toutes les options disponibles avec un affichage de leur type. Par exemple, Get-Service-Namew * affiche une liste de services que le nom commence par w. Si vous avez oublié quels paramètres sont entrés par la cmdlet, utilisez le membre Get. Par exemple, Get-Process | Get-Member:
Si vous n'avez pas trouvé ce dont vous avez besoin ou que vous ne savez pas comment les paramètres sont définis correctement, vous pouvez même demander des exemples à l'aide du paramètre -examples:
Certaines cmdlets peuvent également être appelées avec des alias, par exemple, vous pouvez simplement écrire de l'aide au lieu d'obtenir de l'aide.
Lorsque vous écrivez de gros scripts ou de développement collectif, vous pouvez utiliser des commentaires. Chaque commentaire commence par un numéro de symbole et le bloc de commentaire est limité aux combinaisons de symboles.<# и #> Au début et à la fin, respectivement.
Convoyeur
PowerShell. Vous permet d'échanger des données entre CMDM à l'aide d'un convoyeur. Par example:
- Observice | SortObject -Property Statut - Tri des services de statut a commencé;
- "Bonjour le monde!" | Out-File C: \\ PS \\ Test.txt - Texte d'entrée dans le fichier.
Vous pouvez utiliser plusieurs convoyeurs. Par exemple, le script suivant affiche la liste de tous les services à l'exception de ceux qui sont arrêtés:
Get-Service | Où ($ _. statut -eq "en cours d'exécution") | Sélectionnez displayName.
Conclusion
Donc, grâce à ce leadership, les nouveaux arrivants sont apparus une idée de ce que PowerShell est. Nous avons également examiné les options de modification de la politique d'exécution du script, qui est la clarté, la manière dont ils échangent des données à l'aide du convoyeur et comment obtenir les propriétés de l'objet souhaité. N'oubliez pas qu'en cas de difficultés, vous pouvez utiliser la cmdlet Get-Help.
Windows PowerShell. C'est un outil puissant et peut effectuer presque tout ce qui veut une personne sur son ordinateur. Mais le seul problème est que c'est l'outil de ligne de commande et n'a pas d'interface graphique. Cependant, il peut être utile lorsqu'une interface basée sur l'interface graphique ne fonctionne pas ou ne cesse de répondre. Malheureusement, la principale chose est le fait que l'utilisateur habituel manque de connaissances sur l'utilisation de Powershell à pleinement. Mais aujourd'hui, nous essaierons de discuter des 10 meilleurs commandes PowerShell pouvant aider l'utilisateur à gagner plus dans Windows 10.
Commandes PowerShell qui aideront l'utilisateur à faire plus
Avant de commencer, il est nécessaire de souligner que certains de ces Coldtov Peut changer certains paramètres ou configuration sur votre ordinateur. Cmll - Ceci est un script PowerShell qui effectue une seule fonction. Par conséquent, pour être en sécurité, créez d'abord un point de récupération du système. Si quelque chose ne va pas lors de l'exécution de l'une des cmdlets suivants, vous pouvez toujours restaurer votre ordinateur.
Nous allons considérer Clelytqui peut effectuer les actions suivantes:
- Exécutez l'application UWP.
- Obtenez un certificat de n'importe quel cmot.
- Obtenir des équipes récentes.
- Trouvez un fichier spécifique.
- Lisez le contenu du fichier.
- Recherchez des informations sur tous les services sur votre ordinateur.
- Recherchez des informations sur tous les processus de votre ordinateur.
- Installation de la politique d'exécution.
- Copiez le fichier ou le répertoire.
- Supprimer un fichier ou un répertoire.
1] Exécutez l'application UWP
PowerShell est un excellent outil qui peut être utilisé pour démarrer des applications UWP en quelques secondes. Mais la principale chose est de mettre correctement implémenter l'équipe. Vous pouvez utiliser
Démarrer-processus "MS-Paramètres:"
La commande est facile à démarrer l'application UWP. Vous pouvez en apprendre davantage sur d'autres URIS pour d'autres applications UWP sur Microsoft.com.
2] Obtenir un certificat de n'importe quel cmot
Si vous comprenez jamais quelle commande vous devez utiliser pour effectuer une tâche spécifique. Ou ce qui fait un clarm spécifique, vous n'avez pas besoin de vous inquiéter. Vous pouvez simplement utiliser la cmdlet Get-Help pour le faire. Vous pouvez l'utiliser de la manière suivante:
Get-Help-Aide Obtenir de l'aide pour obtenir-Help -Altl Get-Aide -Example Get-Aide *
Ici, le premier enregistrement vous indiquera comment utiliser cette cmdlet. La deuxième entrée vous donnera un résumé simple d'une cmdlet particulière. La troisième entrée donnera des informations détaillées sur la cmelle correspondante. Le quatrième enregistrement contiendra tout ce qui montre la troisième cmdlet, mais ajoutera un exemple de comment utiliser cette cmdlet. Enfin, le cinquième Clark répertoriera chaque équipe disponible pour votre utilisation.
3] Obtenez des commandes similaires
Pour trouver des commandes de type similaires ou contenir une phrase donnée, vous pouvez utiliser la cmdlet. Get-Command.. Cependant, il ne figure pas tous les cmdlet dans PowerShell, vous utilisez donc des filtres spécifiques. Vous pouvez utiliser les commandes suivantes:
Get-Command -Name Get-Command -CommandType
La première cmdlet vous aidera à trouver une cmdlet avec une phrase spécifique et la seconde - filtrer les cmdlets qui effectuent une fonction spécifique.
4] Recherche d'un fichier spécifique
Si vous devez trouver un fichier ou un répertoire spécifique dans un endroit spécifique, vous pouvez utiliser la cmdlet. Obtenir l'article.. Vous pouvez l'utiliser comme
Obtenir l'article.
Énumérez le contenu d'un chemin spécifique.
5] Lire le contenu du fichier
Obtenir du contenu
6] Lisez les informations sur tous les services sur l'ordinateur..
Vous pouvez utiliser la cmdlet Get-Service.Pour répertorier tous les services fonctionnant ou arrêtés sur votre ordinateur. De plus, vous pouvez utiliser les CMDlets connexes suivants pour effectuer leurs fonctions respectives:
Service de service de start-service Suspend-service de reprise de service de retrait-service
7] Lisez les informations sur tous les processus de l'ordinateur.
Comme une cmdlet get-service, vous pouvez utiliser la cmdlet Get-processus.Pour afficher une liste de tous les processus exécutés sur votre ordinateur. En termes d'alternative, vous pouvez utiliser les cmdlets connexes suivants pour effectuer les fonctions appropriées:
Processus d'arrêt d'arrêt de départ
8] Fixer la politique de mise en œuvre
Bien que PowerShell soutient la création et l'exécution de scénarios, il existe des limites pour chacune d'entre elles dans certaines mesures de sécurité. Vous pouvez changer le niveau de sécurité à l'un des 4 niveaux. Vous pouvez utiliser la cmdlet Set-exécutantpolicyet puis aucun des niveaux de sécurité spécifiés dans
Définir ExectionPolicy Unlimited Set-ExecutionPolicy Tous Signé Set-ExecuVerpolicy Signature Signature Set-Executionpolicy restreint
Ici, les politiques de haut en bas vont du plus bas au plus haut niveau de sécurité.
9] Copier le fichier ou le répertoire
L'utilisateur peut utiliser la cmdlet Article de copie.
Copier-item "E: \\ TwcTest.txt" -Destination "D: \\"
10] Supprimer le fichier ou le catalogue
Comme l'élément de copie de CMDD, l'utilisateur peut utiliser la cmdlet Article de copie. Copier un fichier ou un répertoire à une autre destination. La syntaxe de cette cmdlet
Supprimer-item "e: \\ twctest.txt"
Travailler dans la coquille PowerShell, nous n'avons pas encore pensé à la manière dont le système forme les chaînes de texte affichées à l'écran à la suite de l'exécution d'une commande ou d'une autre (rappel que les cmdlets PowerShell sont renvoyés.NET Objets qui, en règle générale. , ne sais pas comment vous affichez-vous à l'écran).
En fait, PowerShell possède une base de données (un ensemble de fichiers XML) contenant des modules de formatage par défaut pour différents types d'objets .NET. Ces modules déterminent quelles propriétés d'objet sont affichées lors de l'affichage et du format suivant: liste ou table. Lorsque l'objet atteint la fin du convoyeur, PowerShell définit son type et la recherche dans la liste des objets pour lesquels la règle de formatage est définie. Si ce type est détecté dans la liste, le module de formatage approprié est appliqué à l'objet; Sinon, PowerShell affiche simplement les propriétés de cet objet.net.
Également dans PowerShell, vous pouvez spécifier explicitement les règles de mise en forme de données affichées par les cmdismes et, comme l'interpréteur de commande CMD.exe pour rediriger ces données dans le fichier, à l'imprimante ou dans un périphérique vide.
Formater les informations de sortie
Dans les coquilles traditionnelles, les commandes et les utilitaires formatent les données affichées elles-mêmes. Certaines commandes (par exemple, DIR dans l'interprète CMD.exe) vous permettent de régler le format de sortie à l'aide de paramètres spéciaux.
Dans la coquille PowerShell, seuls quatre formats CMDT de format spécial sont formatés (tableau 17.3). Cela simplifie l'étude, car elle n'a pas besoin de se rappeler les moyens et les paramètres de mise en forme pour d'autres commandes (les autres cmdlets ne sont pas formatés).
Cmll | La description |
---|---|
Tableau format | Format la sortie de la commande sous la forme d'une table, dont les colonnes contiennent les propriétés de l'objet (les colonnes calculées peuvent également être ajoutées). Prend en charge la possibilité de grouper les données de sortie |
Liste de format. | La sortie est formatée comme une liste de propriétés dans lesquelles chaque propriété est affichée sur une nouvelle ligne. Prend en charge la possibilité de grouper les données de sortie |
Format-coutume | La représentation de l'utilisateur est utilisée pour formater la sortie (vue) |
Format à l'échelle. | Formats objets sous la forme d'une table large, dans laquelle une seule propriété de chaque objet est affichée. |
Comme indiqué ci-dessus, si aucun des cmdlets de format n'est clairement non spécifié, le module de formatage par défaut est utilisé, qui est déterminé par le type de données affiché. Par exemple, lors de l'exécution de la cmdlet Get-Service, les données par défaut sont affichées sous forme de tableau avec trois colonnes (statut, nom et displayName):
PS C: \\\u003e Get-service Statut Nom DisplayName ------ ---- ----------- Stopped alerteur exécutant le service de la série ALG Gateway Service Stopped AppMgmt Gérer les applications ASP.NET Stopped Aspnet_state Etat service Courir Ati Hotkey Poller Ati Hotkey Poller Exécution Bits Exécution AudioSrv Audio Windows Contexte Intelligent service par ... Exécution du navigateur Explorateur d'ordinateurs service d'indexation arrêtée ciSvc arrêtée ClipSrv serveur de partage de dossiers Stopped Clr_Optimizatio ... service .NET Runtime Optimization V ... arrêté ComSysApp Application système COM + Running CryPTSVC Cryptography Services exécutant DCOMLAUNCH Démarrage des processus Server DCOM exécutant DHCP DHCP Client ...
Pour modifier le format des données de sortie, vous devez les envoyer au convoyeur sur la cmdlet Format correspondant. Par exemple, la commande suivante affichera une liste de services à l'aide de la cmdlet de liste de format:
PS C: \\\u003e Get-Service | Nom de la liste de formats: Alerter DisplayName: Sentiment Siren: Stopped Dépendances: () ServicesDépendez-vous: (Lanmanworkstation) CANPAUSEANDONTINUE: FAUX CANSHUTTOWNUE: FAUX CANSSTOP: FAUX ServiceType: Win32ShaAreprocession Nom: Alg DisplayName: Application Couche Statut de la passerelle Statut de la passerelle: Excellente Dépendances Dépendances: () ServicesDependedOn: () CanPauseAndContinue: CanShutdown Faux: Faux Canstop: True ServiceType: Win32OWNProcess. . .
Comme on peut le voir, plus d'informations sur chaque service est affiché en utilisant le format de liste que dans le format de table (au lieu des trois colonnes de données sur chaque service dans le format de liste, neuf lignes de données sont affichées). Toutefois, cela ne signifie pas que la cmdlet de liste de formats récupère des informations supplémentaires sur les services. Ces données sont contenues dans des objets renvoyés par la cmdlet Get-Service, cependant, la cmdlet de tableau de format utilisée par défaut, les rejette car elle ne peut pas afficher plus de trois colonnes.
Lors du formatage de sortie en utilisant les applets de commande Format-Table Format-List et, vous pouvez spécifier le nom de la propriété d'objet qui doit être affiché (Rappelez-vous que afficher la liste des propriétés disponibles à partir de l'objet, permet l'EEG-membres cmdlet à considérer plus tôt ). Par example:
PS C: \\\u003e Get-Service | Nom de la liste de formats, Status, Nom de dessus: Alerter Statut: StopsPstop: faux Nom: ALG Statut: En cours d'exécution CANSTOP: TRUE NOM: APPMGMT Statut: Stopstop: Faux. . .
Pour retirer toutes les propriétés disponibles dans des objets à l'aide du paramètre *, par exemple:
PS C: \\\u003e Get-Service | Tableau format *
Rediriger les informations affichées
Dans la coque PowerShell, plusieurs cmdlets avec lesquels vous pouvez contrôler la sortie de données. Ces cmdlets commencent par le mot, leur liste peut être considérée comme suit:
PS C: \\\u003e Get-Command Out- * | Nom du nom de la table FORMAT ---- Out-imprimante Out-Null Out-Null Host-Null Host-NULL
Par défaut, les informations de sortie sont transmises par la cmdlet Out-défaut, qui, à son tour, déléguette tous les travaux sur les chaînes de sortie sur l'écran de la cmdlet Out-Host. Pour comprendre ce mécanisme, il est nécessaire de prendre en compte que l'architecture PowerShell implique la différence entre le noyau de la coque (interprète de commande) et l'application principale (hôte), qui utilise ce noyau. En principe, toute application dans laquelle un certain nombre d'interfaces spéciales sont implémentées peut être mise en œuvre correctement pour interpréter les informations obtenues de PowerShell. Dans notre cas, l'application principale est la fenêtre de la console dans laquelle nous travaillons avec la coquille et la cmdlet Out-Host transmet les informations affichées dans cette fenêtre de la console.
Le paramètre Paging Out-Host-Host-Host, similaire à la commande plus interpréter, vous permet d'organiser des informations de retrait de la chaussée, par exemple:
Get-Help Get-Traitement -ulful | Out-Host -Paging
Enregistrer des données sur le fichier
La cmdlet Out-File vous permet d'envoyer les données affichées au lieu de la fenêtre de la console dans le fichier texte. Une tâche similaire est résolu par l'instruction de redirection (\u003e), cependant, l'applet de commande Out-File a plusieurs paramètres supplémentaires, avec lequel vous pouvez contrôler plus flexible la sortie: Définir le type d'encodage de fichiers (paramètre d'encodage), régler la longueur de la les lignes de sortie en caractères (paramètre de largeur), le mode de sélection du fichier Rewashes (append, noclobber). Par exemple, la commande suivante enverra des informations sur les services du fichier C: \\ Service.txt enregistré sur l'ordinateur et ce fichier sera enregistré au format ASCII.
Cet article est une version texte de la leçon de notre parcours vidéo de PowerShell gratuit et des bases de Active Directory (utilisez le mot secret «Blog» pour obtenir un accès complet.Ce cours vidéo s'est avéré être inhabituellement populaire dans le monde entier et il vous guidera toutes les étapes permettant de créer un ensemble complet d'outils permettant de gérer le service d'annuaire Active Directory à partir du plus basique.
Codage avec PowerShell
Dans un premier temps, il peut sembler une tâche difficile de commencer à travailler avec PowerShell, surtout si au fil des ans, vous avez déjà l'habitude de travailler avec la ligne de commande cmd.exe et les soi-disant « fichiers batch » (fichiers avec extensions.bat .cmd) . Dans cet article, écrit sur les matériaux de la 2e leçon de notre parcours vidéo, nous vous dirons comment et pourquoi devez-vous mettre à jour vos compétences professionnelles avec PowerShell et examiner également le lancement de l'éditeur PowerShell, nous maîtriserons l'auto -Achèvement des équipes et comment dans une situation difficile obtenir de l' aide et des exemples pertinents.Exécution des commandes
La console PowerShell est un environnement interactif qui vous permet d'exécuter diverses commandes en temps réel. Ici, vous n'avez pas besoin de commencer à modifier le script dans le cahier et ne l'exécutez que sur la ligne de commande, ce qui permettra également de gagner votre temps de manière significative.
Si vous travaillez maintenant dans une organisation qui n'existe pas ce jour-là, vous avez déjà quelques petites scripts pour chaque jour que vous exécutez à partir de la ligne de commande CMD.EXE. Et c'est une bonne nouvelle! Donc, vous pouvez également facilement effectuer tout cela de PowerShell. C'était une décision de conception véritablement judicieuse de Microsoft, de sorte qu'elles ont fait une transition vers une nouvelle solution plus facile pour les administrateurs.
En apparence, l'éditeur PowerShell apparaît et fonctionne exactement comme l'environnement de la ligne de commande CMD.EXE. Les prises et les compétences que vous possédez déjà travailleront sans changement dans PowerShell. Et si vous souhaitez également améliorer vos qualifications et travailler sur la transition d'effectuer des tâches jetables, pour assurer une administration plus automatisée, alors l'habitude de lancer PowerShell, et non une ligne de commande est un excellent moyen de commencer.
Tous vos utilitaires fréquemment utilisés, tels que Ping, IPConfig, Nslookup, etc. vont fonctionner exactement comme vous vous attendez.
Comment trouver des équipes PowerShell
Les gens aiment PowerShell, parce que c'est tellement puissant! Mais cette force provient d'un nombre total de fonctionnalités intégrées. Il n'est tout simplement pas possible, mais probablement pas pratique pour que quelqu'un se souvienne de toutes sortes d'équipes, de villes, de drapeaux, de filtres et d'autres moyens de dire PowerShell quoi et comment faire.Heureusement, quelques outils sont construits directement dans l'éditeur pour vous aider à y faire face.
Terminaison automatique des commandes en appuyant sur l'onglet
Pas besoin de mémoriser diverses commandes ou une écriture d'équipe précise. Cadran
Get-c.
En cliquant maintenant sur la touche Tab, vous pouvez passer via toutes les commandes disponibles en commençant par ces caractères que vous avez déjà entrés. De plus, cela fonctionne dans n'importe quelle partie du corps de la commande auquel vous essayez de vous référer: dans les noms et les indicateurs des commandes, et même lorsque les chemins complets sont testés sur le système de fichiers.
Équipe à commandes
Malgré le fait que l'autocopteur de l'onglet fonctionne parfaitement, que se passe-t-il si vous ne connaissez pas le nom correct de l'équipe dont vous avez besoin? Dans ce cas, vous pouvez utiliser la commande pour trouver d'autres commandes disponibles: Get-Command.
À la recherche du nom de l'équipe, il est important de garder à l'esprit qu'il existe une syntaxe pour eux: le nom du verbe. En règle générale, des verbes tels que - get (get), définis (ensemble), ajouter (Ajouter), Effacer (Effacer), lire (lire), lire (lire) et écrire et Nouns - fichiers, serveurs ou autres entités de votre réseau et d'applications.
Get-Command.- Il s'agit d'un outil de recherche et d'étude de commandes disponibles sur votre ordinateur.
Syntaxe d'équipe dans PowerShell
Une fois que quelqu'un a décrit une fois la langue des scripts Perl comme "bruit des lignes exécutables de code" (Orig. "Bruit de la ligne exécutable") est un outil incroyablement utile, avec une syntaxe extrêmement opaque et, en conséquence, avec un seuil d'entrée élevé pour son étude.Bien que si vous le comprenez, la ligne de commande traditionnelle dans Windows n'est pas si loin de celle-ci. Considérez la tâche globale sur la manière de trouver tous les fichiers du répertoire dont les noms commencent par «FOO».
Cmd: pour / d / r% g in ("foo *") do @ echo% g
Pour et indiquer que c'est un cycle.
Flag / d Indique qu'il s'agit d'une boucle pour tous les dossiers.
Flag / R indique que vous devez inclure tous les fichiers et dossiers, y compris les sous-répertoires.
Modèle de recherche qui définit le jeu de fichiers d'intérêt pour nous est noté par "IN"
ECHO indique que le script doit afficher le résultat de chaque cycle et, enfin,
% G est un "paramètre forcé" et sélectionné car les programmeurs de Microsoft ont déjà utilisé lors du développement de la lettre A, D, F, N, P, T, T et X. Par conséquent, commencent par G, est un bon tonalité, T . à. Cela vous donne le plus grand ensemble de lettres non utilisées pour les méthodes de chemins de variables renvoyées (G, H, I, J, K, L, M) - autrement dit, il est un lifehak.
Comparez maintenant équivalent à PowerShell:
PowerShell: Get-Childem -Path C: \\ -Filter 'FOO *'
Le résultat est le même, mais même sur un exemple aussi assez trivial, il sera beaucoup plus facile de comprendre ce qui se passe. Il devient immédiatement évident que cela rend chaque élément de l'équipe et comment les changer. Eh bien, à l'exception du caractère générique « * » utilisé dans les deux exemples, mais je pense que vous êtes si bien que cela signifie - que tous les éléments devraient commencer par « foo » et à la fin de quelque chose d'autre.
Vous sentez-vous comment votre humeur s'améliore progressivement? Et maintenant que si vous voulez savoir comment choisir uniquement des fichiers (et pas de dossier) sur le chemin? Pouvez-vous creuser dans les manuels ou votre meilleur ami Google pour vous aider ou essayer de déterminer la ligne de commande? Petit indice: Si vous êtes dans PowerShell, entrez "-" et appuyez sur la touche TAB, passez à travers les indicateurs souhaités jusqu'à ce que la solution évidente apparaisse.
Une longue rangée contre l'objet
Les sites ne sont pas nécessaires par personne s'ils ne sont pas en ligne. C'est pourquoi les gens passent beaucoup de temps, prétendant qu'ils sont des opérateurs de sonar sur un sous-marin et «Pin» la disponibilité de leurs serveurs (oui, c'est pourquoi il est appelé).Malgré le fait que la sortie de commande Ping est utile (et vous pouvez utiliser Ping avec le même succès dans la console PowerShell), à la fin, il est juste une grande et longue ligne - un certain nombre de lettres et de chiffres avec quelques interruptions entre eux.
Dans PowerShell, une commande ressemble à ping, mais renvoie des données sous forme structurée. Ceci est une commande de connexion de test.
Vous trouverez ci-dessous le résultat du travail de cette commande de partage de commandes avec le serveur «DC» sous une forme complètement structurée entièrement structurée:
Sans parler du fait qu'il est beaucoup plus facile de lire, mais la principale chose est que vous pouvez désormais transférer ces informations à l'entrée d'une autre équipe, donnez-lui encore plus d'utilité (notre parcours vidéo complet pour cela est destiné) ou simplement c'est de savoir qu'il semblait plus de sens.
Aide intégrée
Jusqu'à présent, nous nous sommes concentrés sur l'exécution de certaines commandes à l'aide du supplément d'onglet, mais dès que vous commencez à travailler avec PowerShell, de plus en plus d'équipes sont de plus en plus complexes avec des paramètres encore plus complexes. Alors que la syntaxe verb-noun (verb-nom) aide, mais encore plus aide la présence à portée de main:
1. Documentation réelle
2. Abondance d'exemples
Aide sur la cmdlet
En pratique, vous devez combiner la commande get-commande (pour rechercher ce que vous devez utiliser), puis utiliser Get-Aide pour apprendre à utiliser cette commande particulière.Un exemple pratique de la façon de faire cela: Par exemple, vous devez définir tous les services Windows Windows sur votre ordinateur.
Pour commencer, vous pouvez rechercher l'équipe pour interagir avec les services:
Service de commande
Ce qui vous dira immédiatement que vous êtes sur la bonne voie. En pensant à la syntaxe standard des commandes PowerShell Verb-Noun, vous souhaitez savoir comment utiliser la commande 'get-service'.
Document Microsoft sur Get-Service
Pour ce faire, utilisez la commande 'get-help'. Commencer à imprimer
"Get-Help -" puis appuyez sur la touche TAB
Vous trouverez rapidement des options disponibles, un «nom» convient le mieux, de sorte que cela vaut la peine d'être essayé:
Get-help-nom get-service
Immédiatement, vous obtiendrez une syntaxe de commande complète (et des options que vous pouvez activer ou exclure sur la base des filtres).
Si vous souhaitez explorer la commande plus profonde et détaillez-le à chaque paramètre, tapez:
Get-Help -Name Get-Service - Nom du paramètre
Aide avec des exemples sur PowerShell
Nous sommes tous des gens et, sans infraction de Bot google, nous avons tous nos obstacles psychologiques que nous devons empêcher lors de l'étude de quelque chose de peu connu et de la conduire à une forme habituelle afin de remplir ce dont nous avons besoin.Saisie de "-Examples" ou d'ajout du drapeau "-Detail" à la commande "get-help", vous recevrez un ensemble d'exemples pour utiliser l'équipe.
Ici, par exemple, la production de l'équipe:
Get-Help -Name Get-Service -Examples
Rester dans le cours
Ce qui peut être plus terrible qu'un exemple de non-travail, ou un exemple avec une erreur dans la documentation. Cela arrive souvent soit en raison de la documentation obsolète, soit due à des exemples incorrects ou en raison de bibliothèques mises à jour.Pour contourner ces problèmes et en même temps, obtenez de nouveaux exemples et corrigez:
Update-aide.
Et le processus de téléchargement d'une assistance contextuelle mise à jour commencera.
Vous pouvez aider et traduire de l'argent sur le développement du site.
Bien que PowerShell soit une langue de console, parfois nécessaire à partir du script PowerShell pour informer l'utilisateur d'un événement spécifique ou de la nécessité d'effectuer une action spécifique. Par exemple, pour afficher une notification de l'achèvement d'un script POSCH à long terme ou sur la survenue d'un événement important.
Le moyen le plus simple d'afficher une fenêtre avec un test arbitraire via le sous-système de script Windows - Wscript.
Le code suivant affichera la zone de texte habituelle avec le texte nécessaire et le bouton OK.
$ WSHELL \u003d nouvel objet -Commode wscript.shell
$ Sortie \u003d $ wshell.popup ("Script de formation de rapport")
En utilisant les différentes propriétés de la méthode contextuelle, vous pouvez configurer la vue de la fenêtre de message modal. Y compris vous pouvez revenir au script les résultats de la réponse de l'utilisateur à la question (oui / non).
$ SORTIE \u003d $ WSHELL.POPUPUP ("Le script de formation de rapport est terminé! Vous voulez l'apporter à l'écran?", 0, "prêt prêt", 4 + 32)
Paramètres de la méthode de syntaxe et de popup générale:
Surgir (
Paramètres:
- String, texte de message. - Facultatif, numéro. Le nombre de secondes après quoi la fenêtre sera automatiquement fermée. - Facultatif, String. Fenêtre de message de titre texte. - Facultatif, numéro. La combinaison des drapeaux, définit le type de boutons et l'icône. Valeurs d'indicateur possibles: - 0 - Bouton OK.
- 1 - Boutons OK et Annuler.
- 2 - boutons d'arrêt, répétez, sautez.
- 3 - Boutons Oui, Non, Annulation.
- 4 - boutons et non.
- 5 - Boutons répétés et annulés.
- 16 - Icône d'arrêt.
- 32 - Icône de la question.
- 48 - Icône d'exclamation.
- 64 - Icône d'information.
Description: Retourne une valeur entière avec laquelle vous pouvez savoir quel bouton a été appuyé par l'utilisateur. Valeurs possibles:
- -1 - Timeout.
- 1 - Bouton OK.
- 2 - Bouton Annuler.
- 3 - Bouton d'arrêt.
- 4 - Bouton de répétition.
- 5 - Bouton de saut.
- 6 - Bouton Oui.
- 7 - Pas de bouton.
Des vues plus attrayantes et agréables sur les messages contextuels (Ballons) peuvent être affichées sous Windows 7, 8.1 et 10 à travers les API Windows Forms. Le code PowerShell suivant affichera un message contextuel à côté du panneau de notification Windows 10, qui disparaîtra automatiquement après 10 secondes.
Système System.Windows.Windows.Forms
$ Global: balmsg \u003d nouveau-objet system.windows.forms.notifyicon
$ Chemin \u003d (get-processus -id $ pid) .Path
$ Balmsg.icon \u003d :: extraire commocicidicon ($ chemin)
$ Balmsg.ballOipicon \u003d :: Avertissement
$ BALMSG.BALLOONIPTEXT \u003d "Ceci est le texte du message contextuel pour Windows 10"
$ BALMSG.BALLOONTIPTLE \u003d "(! Lang: Attention $ env: Nom d'utilisateur"!}
$ Balmsg.visible \u003d $ vrai
$ BALMSG.SHOWBALLOPOP (10 000)
De plus, pour créer des messages contextuels colorés dans Windows 10 (PowerShell 5.0+), vous pouvez utiliser un module de PowerShellToast séparé de PowerShell de la galerie PowerShell.
Le module est installé à partir du référentiel en ligne en utilisant:
Installer-module -Name BurntToast
Maintenant, par exemple, auparavant considéré, vous pouvez ajouter un avis coloré:
Nouveau-BurnttoastNotification -Text "Déconnexion du réseau Wi-Fi" "," Vous avez été déconnecté du réseau Wi-Fi, car le périphérique est maintenant connecté à la connexion Ethernet de vitesse. " -Applogo c: \\ PS \\ Changenetwork.png
Donc, maintenant, vous savez comment afficher un avis d'utilisateur via PowerShell. Si l'utilisateur a des haut-parleurs, vous pouvez même jouer une mélodie:
:: Beep (440 500)
:: Beep (440 500)
:: Beep (440 500)
:: Beep (349 350)
:: Beep (523.150)
:: Beep (440 500)
:: Beep (349 350)
:: Beep (523.150)
:: Beep (440,1000)
:: Beep (659 500)
:: Beep (659 500)
:: Beep (659 500)
:: Beep (698 350)
:: Beep (523.150)
:: Beep (415,5,5,5 500)
:: Beep (349 350)
:: Beep (523.150)
:: Beep (440,1000)
:: Beep (880 500)
:: Beep (440 350)
:: Beep (440.150)
:: Beep (880 500)
:: Beep (830.250)
:: Beep (784.250)
:: Beep (740,125)
:: Beep (698,125)
:: Beep (740.250)
:: Beep (455.250)
:: Beep (622 500)
:: Beep (587.250)
:: Beep (554.250)
:: Beep (523,125)
:: Beep (466,125)
:: Beep (523.250)
:: Beep (349,125)
:: Beep (415,5,5,5 500)
:: Beep (349,375)
:: Beep (440,125)
:: Beep (523 500)
:: Beep (440,375)
:: Beep (523,125)
:: Beep (659,1000)
:: Beep (880 500)
:: Beep (440 350)
:: Beep (440.150)
:: Beep (880 500)
:: Beep (830.250)
:: Beep (784.250)
:: Beep (740,125)
:: Beep (698,125)
:: Beep (740.250)
:: Beep (455.250)
:: Beep (622 500)
:: Beep (587.250)
:: Beep (554.250)
:: Beep (523,125)
:: Beep (466,125)
:: Beep (523.250)
:: Beep (349.250)
:: Beep (415,5,5,5 500)
:: Beep (349,375)
:: Beep (523,125)
:: Beep (440 500)
:: Beep (349,375)
:: Beep (261,125)
:: Beep (440,1000)