Veelgestelde vragenFrequently Asked Questions

Wat is een PowerShell-module?What is a PowerShell module?

Een PowerShell-module is een herbruikbare pakket op met een PowerShell-functionaliteit.A PowerShell module is a reusable package containing some PowerShell functionality. Alles in PowerShell (functies, variabelen, DSC-resources, enz.) kan worden verpakt in modules.Everything in PowerShell (functions, variables, DSC resources, etc.) can be packaged in modules. Modules zijn meestal mappen met specifieke typen bestanden die zijn opgeslagen op een specifiek pad.Typically, modules are folders containing specific types of files stored on a specific path. Er zijn enkele verschillende soorten er PowerShell-modules.There are a few different types of PowerShell modules out there.

Wat is een PowerShell-script?What is a PowerShell script?

Een PowerShell-script is een reeks opdrachten die zijn opgeslagen in een .ps1-bestand om in te schakelen hergebruik en delen.A PowerShell script is a series of commands that are stored in a .ps1 file to enable reuse and sharing. PowerShell-werkstromen zijn ook PowerShell-scripts, waardoor het overzicht van een verzameling taken en geef sequentiëren voor deze taken.PowerShell workflows are also PowerShell scripts, which outline a set of tasks and provide sequencing for those tasks. Voor meer informatie raadpleegt u aan de slag met PowerShell Workflow.For more information, please visit Getting Started with PowerShell Workflow.

Hoe weet PowerShell-Scripts verschilt van PowerShell-Modules?How are PowerShell Scripts different from PowerShell Modules?

Modules zijn doorgaans beter voor het delen van, maar we inschakelt script eenvoudiger voor u werkstromen en scripts bijdragen aan de community delen.Modules are generally better for sharing, but we are enabling script sharing to make it easier for you to contribute workflows and scripts to the community. Zie de volgende blogs voor meer informatie:For more information, see the following blogs:

Voordat u items naar de galerie publiceren kunt, moet u een account registreren in de PowerShell-galerie.You must register an account in the PowerShell Gallery before you can publish items to the Gallery. Dit is omdat een NuGetApiKey die wordt geleverd bij de registratie publiceren items vereist.This is because publishing items requires a NuGetApiKey, which is provided upon registration. Als u wilt registreren, gebruikt u uw persoonlijke, werk of schoolaccount aan te melden bij de PowerShell-galerie.To register, use your personal, work, or school account to sign in to the PowerShell Gallery. Een eenmalige registratie-proces is vereist wanneer u zich aanmeldt voor het eerst.A one-time registration process is required when you sign in for the first time. Daarna is uw NuGetApiKey beschikbaar in uw profiel.Afterwards, your NuGetApiKey is available on your profile page.

Zodra u hebt geregistreerd in de galerie, gebruikt u de publiceren-Module of publiceren Script cmdlets voor het publiceren van uw object aan de galerie.Once you have registered in the Gallery, use the Publish-Module or Publish-Script cmdlets to publish your item to the Gallery. Ga naar het tabblad publiceren of lezen voor meer informatie over het uitvoeren van deze cmdlets de publiceren-Module en publiceren Script documentatie.For more details on how to run these cmdlets, visit the Publish tab, or read the Publish-Module and Publish-Script documentation.

U hoeft niet te registreren of aanmelden bij de galerie te installeren of items op te slaan.You do not need to register or sign in to the Gallery to install or save items.

Deze fout kan optreden vanwege de volgende redenen:This error can occur for the following reasons:

  • De opgegeven API-sleutel is ongeldig. The specified API key is invalid. Zorg ervoor dat u de geldige API-sleutel van uw account hebt opgegeven.Ensure that you have specified the valid API key from your account. Als u uw API-sleutel, moet u uw profielpagina weergeven.To get your API key, view your profile page.
  • Naam van het opgegeven item is geen eigendom van u. The specified item name is not owned by you. Als u hebt gecontroleerd of uw API-sleutel juist is en bestaat er al een item met dezelfde naam als het account dat u probeert te gebruiken.If you have confirmed that your API key is correct, then there may already exist an item with the same name as the one you are trying to use. Het item is niet-vermelde door de eigenaar, in dat geval kan deze niet weergegeven in zoekresultaten.The item may have been unlisted by the owner, in which case it will not appear in any search results. Open een browser om te bepalen of er al een item met dezelfde naam bestaat, en navigeer naar de pagina details van het item: https://www.powershellgallery.com/packages/<itemName>.To determine if an item with the same name already exists, open a browser and navigate to the item's details page: https://www.powershellgallery.com/packages/<itemName>. Bijvoorbeeld, navigeren rechtstreeks naar https://www.powershellgallery.com/packages/pester gaat u naar de pagina details van de module Pester, of niet-vermelde of niet is.For example, navigating directly to https://www.powershellgallery.com/packages/pester will take you to the Pester module's details page, whether it is unlisted or not. Als een item met een conflicterende naam al bestaat en niet-vermelde, kunt u:If an item with a conflicting name already exists and is unlisted, you can:
    • Selecteer een andere naam voor het object.Select another name for your item.
    • Neem contact op met de eigenaren van het bestaande item.Contact the owners of the existing item.

Waarom ik kan niet met mijn persoonlijke account aanmelden, maar ik gisteren kan aanmelden?Why can't I sign in with my personal account, but I could sign in yesterday?

Zorg ervoor dat uw account galerie niet geschikt is voor wijzigingen in uw primaire e-mailalias.Please be aware that your gallery account does not accommodate changes to your primary email alias. Zie voor meer informatie Microsoft e-aliassen.For more information, see Microsoft Email Aliases.

Als u een categorie selectievakje selecteert, worden u mededeling "Ik zou willen zien alle items in deze categorie."By selecting a Category checkbox, you are stating "I would like to see all items in this category." Alleen de items in de geselecteerde categorieën weergegeven.Only the items in the selected categories will be displayed. Dus op dezelfde manier als u alle selectievakjes in de categorie, u zijn met de mededeling "Ik zou willen zien alle items in elke categorie."So similarly, by selecting all the Category checkboxes, you are stating "I would like to see all items in any category." Maar een aantal items in de galerie behoren niet tot een van de categorieën weergegeven, zodat deze niet in de resultaten weergegeven.But some items in the gallery do not belong to any of the categories listed, so they will not appear in the results. Alle items in de galerie wilt zien, schakel het selectievakje uit alle categorieën of Selecteer het tabblad Items opnieuw.To see all items in the gallery, uncheck all the Categories, or select the Items tab again.

Elk soort PowerShell-module (scriptmodules, binaire modules of manifest modules) kan worden gepubliceerd naar de galerie.Any kind of PowerShell module (script modules, binary modules, or manifest modules) can be published to the gallery. Voor het publiceren van een module PowerShellGet moet weten van enkele zaken - versie van het, beschrijving, de auteur en hoe deze wordt in licentie gegeven.To publish a module, PowerShellGet needs to know a few things about it - the version, description, author, and how it is licensed. Deze informatie wordt gelezen als onderdeel van het publicatieproces van de module-manifest (.psd1)-bestand, of van de waarde van de publiceren-Module van cmdlet LicenseUri parameter.This information is read as part of the publishing process from the module manifest (.psd1) file, or from the value of the Publish-Module cmdlet's LicenseUri parameter. Alle modules die zijn gepubliceerd naar de galerie moeten modulemanifesten hebben.All modules published to the Gallery must have module manifests. Iedere module met de volgende informatie in het manifest kan worden gepubliceerd naar de galerie met:Any module that includes the following information in its manifest can be published to the Gallery:

  • VersieVersion
  • BeschrijvingDescription
  • auteurAuthor
  • Een URI met de licentievoorwaarden van de module als onderdeel van de PrivateData sectie van het manifest, of in de LicenseUri parameter van de publiceren-Module cmdlet.A URI to the license terms of the module, either as part of the PrivateData section of the manifest, or in the LicenseUri parameter of the Publish-Module cmdlet.

Hoe maak ik een correct opgemaakt module-manifestHow do I create a correctly-formatted module manifest?

De eenvoudigste manier om te maken van een module-manifest is om uit te voeren de nieuw ModuleManifest cmdlet.The easiest way to create a module manifest is to run the New-ModuleManifest cmdlet. In PowerShell 5.0 of hoger, nieuw ModuleManifest genereert een correct opgemaakt module-manifest met lege velden voor nuttig metagegevens zoals ProjectUri, LicenseUri, en labels.In PowerShell 5.0 or newer, New-ModuleManifest generates a correctly-formatted module manifest with blank fields for useful metadata like ProjectUri, LicenseUri, and Tags. Vul de lege waarden gewoon of gegenereerd manifest gebruiken als een voorbeeld van de juiste opmaak.Simply fill in the blanks, or use the generated manifest as an example of correct formatting.

Om te controleren of alle vereiste metagegevensvelden goed hebt ingevuld, gebruikt de Test ModuleManifest cmdlet.To verify that all required metadata fields have been properly filled, use the Test-ModuleManifest cmdlet.

De module manifestbestand als velden wilt bijwerken, gebruiken de Update ModuleManifest cmdlet.To update the module manifest file fields, use the Update-ModuleManifest cmdlet.

Elk soort PowerShell-script (scripts of werkstromen) kan worden gepubliceerd naar de galerie.Any kind of PowerShell script (scripts or workflows) can be published to the gallery. Voor het publiceren van een script PowerShellGet moet weten van enkele zaken - versie van het, beschrijving, de auteur en hoe deze wordt in licentie gegeven.To publish a script, PowerShellGet needs to know a few things about it - the version, description, author, and how it is licensed. Deze informatie wordt gelezen als onderdeel van het publicatieproces van het scriptbestand PSScriptInfo sectie, of van de waarde van de publiceren Script van cmdlet LicenseUri parameter.This information is read as part of the publishing process from the script file's PSScriptInfo section, or from the value of the Publish-Script cmdlet's LicenseUri parameter. Alle scripts die worden gepubliceerd naar de galerie moeten metagegevens hebben.All scripts published to the Gallery must have metadata information. Elk script dat de volgende informatie in de sectie PSScriptInfo bevat kan worden gepubliceerd naar de galerie met:Any script that includes the following information in its PSScriptInfo section can be published to the Gallery:

  • VersieVersion
  • BeschrijvingDescription
  • auteurAuthor
  • Een URI met de licentievoorwaarden van het script als onderdeel van de PSScriptInfo gedeelte van het script of in de LicenseUri parameter van de publiceren-Script cmdlet.A URI to the license terms of the script, either as part of the PSScriptInfo section of the script, or in the LicenseUri parameter of the Publish-Script cmdlet.

Typ wat u zoekt in het tekstvak.Type what you are looking for in the text box. Bijvoorbeeld, als u wilt zoeken naar modules die zijn gerelateerd aan Azure SQL wilt, typ 'azure sql'.For example, if you want to find modules that are related to Azure SQL, just type "azure sql". Onze zoekfunctie zoekt naar deze trefwoorden in alle gepubliceerde artikelen, waaronder titels, beschrijvingen en metagegevens.Our search engine will look for those keywords in all published items, including titles, descriptions and across metadata. Vervolgens, op basis van een gewogen quality-score, deze het meest overeenkomt met weergegeven.Then, based on a weighted quality score, it will display the closest matches. U kunt ook zoeken door een bepaald veld met veld: 'waarde' syntaxis in de query voor de volgende velden:You can also search by specific field using field:"value" syntax in the search query for the following fields:

  • LabelsTags
  • FunctiesFunctions
  • CmdletsCmdlets
  • DscResourcesDscResources
  • PowerShellVersionPowerShellVersion

Zo is, bijvoorbeeld wanneer u zoekt naar PowerShellVersion: '2.0' alleen resultaten die compatibel met PowerShellVersion 2.0 zijn (op basis van het manifest van de module-script) worden weergegeven.So, for example, when you search for PowerShellVersion:"2.0" only results that are compatible with PowerShellVersion 2.0 (based on their module/script manifest) will be displayed.

Hoe maak ik een correct opgemaakt scriptbestandHow do I create a correctly-formatted script file?

De eenvoudigste manier om een correct opgemaakt scriptbestand maken om uit te voeren is de nieuw ScriptFileInfo cmdlet.The easiest way to create a properly-formatted script file is to run the New-ScriptFileInfo cmdlet. In PowerShell 5.0 nieuw ScriptFileInfo genereert een correct opgemaakt scriptbestand met lege velden voor nuttig metagegevens zoals ProjectUri, LicenseUri, en labels .In PowerShell 5.0, New-ScriptFileInfo generates a correctly-formatted script file with blank fields for useful metadata like ProjectUri, LicenseUri, and Tags. Vul de lege waarden gewoon of het bestand gegenereerde script gebruiken als een voorbeeld van de juiste opmaak.Simply fill in the blanks, or use the generated script file as an example of correct formatting.

Om te controleren of alle vereiste metagegevensvelden goed hebt ingevuld, gebruikt de Test ScriptFileInfo cmdlet.To verify that all required metadata fields have been properly filled, use the Test-ScriptFileInfo cmdlet.

Gebruik voor het bijwerken van het script metagegevensvelden, de Update ScriptFileInfo cmdlet.To update the script metadata fields, use the Update-ScriptFileInfo cmdlet.

Wat andere typen van PowerShell-Modules voorkomen?What other types of PowerShell Modules exist?

De term PowerShell-module verwijst ook naar de bestanden die werkelijke functionaliteit implementeren.The term PowerShell module also refers to the files that implement actual functionality. Module scriptbestanden (.psm1) bevatten PowerShell-code.Script module files (.psm1) contain PowerShell code. Module binaire bestanden (.dll) bevatten gecompileerde code.Binary module files (.dll) contain compiled code.

Hier volgt één manier om na te denken: de map die de module kapselt is de modulemap.Here is one way to think about it: the folder that encapsulates the module is the module folder. De modulemap mag een module-manifest (.psd1) waarmee de inhoud van de map wordt beschreven.The module folder can contain a module manifest (.psd1) that describes the contents of the folder. De bestanden die daadwerkelijk het werk te doen zijn de module scriptbestanden (.psm1) en de module binaire bestanden (.dll).The files that actually do the work are the script module files (.psm1) and the binary module files (.dll). DSC-resources bevinden zich in een specifieke submap en worden geïmplementeerd als module scriptbestanden of module binaire bestanden.DSC resources are located in a specific sub-folder, and are implemented as script module files or binary module files.

Alle modules in de galerie modulemanifesten bevatten en de meeste van deze modules scriptbestanden module of module binaire bestanden bevatten.All of the modules in the Gallery contain module manifests, and most of these modules contain script module files or binary module files. De term-module kan verwarrend zijn vanwege deze andere betekenis.The term module can be confusing because of these different meanings. Tenzij expliciet anders vermeld, worden alle maakt gebruik van de module word op deze pagina verwijzen naar de modulemap met deze bestanden.Unless explicitly stated otherwise, all uses of the word module on this page refer to the module folder containing these files.

Hoe PackageManagement relateren aan PowerShellGet?How does PackageManagement relate to PowerShellGet? (Hoog niveau antwoord)(High Level Answer)

PackageManagement is een algemene interface voor het werken met een Pakketbeheer.PackageManagement is a common interface for working with any package manager. Uiteindelijk, of u bent omgaan met PowerShell-modules, MSI-bestanden, Ruby gems, NuGet-pakketten of Perl modules, moet u gebruikmaken van PackageManagement opdrachten (zoek-pakket en Install-Package) om te zoeken en deze installeren.Eventually, whether you're dealing with PowerShell modules, MSIs, Ruby gems, NuGet packages, or Perl modules, you should be able to use PackageManagement's commands (Find-Package and Install-Package) to find and install them. PackageManagement doet dit door een Pakketprovider voor elke Pakketbeheer PackageManagement aansluit.PackageManagement does this by having a package provider for each package manager that plugs into PackageManagement. Providers gaat het echte werk; Deze inhoud ophalen van de opslagplaatsen en de inhoud lokaal wordt geïnstalleerd.Providers do all of the actual work; they fetch content from repositories, and install the content locally. Vaak heen pakket providers gewoon loopt de bestaande package manager-hulpprogramma's voor een opgegeven pakkettype.Often, package providers simply wrap around the existing package manager tools for a given package type.

PowerShellGet is de package manager voor PowerShell-items.PowerShellGet is the package manager for PowerShell items. Er is een PSModule Pakketprovider waarmee de functionaliteit PowerShellGet via PackageManagement.There is a PSModule package provider that exposes PowerShellGet functionality through PackageManagement. Als gevolg hiervan kunt u uitvoeren Install-Module of Install-Package-Provider PSModule voor het installeren van een module van de PowerShell Gallery.Because of this, you can either run Install-Module or Install-Package -Provider PSModule to install a module from the PowerShell Gallery. Bepaalde functionaliteit PowerShellGet, met inbegrip van Update-Module en publiceren-Module, kan niet worden geopend via PackageManagement opdrachten.Certain PowerShellGet functionality, including Update-Module and Publish-Module, cannot be accessed through PackageManagement commands.

Kortom, is de PowerShellGet uitsluitend gericht op een premium pakket beheerervaring voor PowerShell inhoud hebben.In summary, PowerShellGet is solely focused on having a premium package management experience for PowerShell content. PackageManagement is gericht op het blootstellen van alle pakket ervaringen met een algemene reeks hulpprogramma's.PackageManagement is focused on exposing all package management experiences through one general set of tools. Als u dit antwoord unsatisfying vinden, er is een lang antwoord aan de onderkant van dit document, in de hoe PackageManagement daadwerkelijk hebben betrekking op PowerShellGet? sectie.If you find this answer unsatisfying, there is a long answer at the bottom of this document, in the How does PackageManagement actually relate to PowerShellGet? section.

Voor meer informatie raadpleegt u de PackageManagement projectpagina.For more information, please visit the PackageManagement project page.

Hoe NuGet relateren aan PowerShellGet?How does NuGet relate to PowerShellGet?

De PowerShell-galerie is een gewijzigde versie van de NuGet-galerie.The PowerShell Gallery is a modified version of the NuGet Gallery. NuGet-provider PowerShellGet gebruikt voor het werken met NuGet op basis van opslagplaatsen zoals de PowerShell-galerie.PowerShellGet uses NuGet provider to work with NuGet based repositories like the PowerShell Gallery.

U kunt PowerShellGet gebruiken op basis van een geldige NuGet-opslagplaats of de bestandsshare.You can use PowerShellGet against any valid NuGet repository or file share. U hoeft alleen de opslagplaats toevoegen door het uitvoeren van de registreren PSRepository cmdlet.You simply need to add the repository by running the Register-PSRepository cmdlet.

Ja.Yes.

Hoe PackageManagement daadwerkelijk hebben betrekking op PowerShellGet?How does PackageManagement actually relate to PowerShellGet? (Technische Details)(Technical Details)

Achter de schermen maakt PowerShellGet intensief gebruik van PackageManagement-infrastructuur.Under the hood, PowerShellGet heavily leverages PackageManagement infrastructure.

Op de laag PowerShell-cmdlet Install-Module is daadwerkelijk een thin wrapper rond Install-Package-Provider PSModule.At the PowerShell cmdlet layer, Install-Module is actually a thin wrapper around Install-Package -Provider PSModule.

Op de laag van PackageManagement pakket provider roept de PSModule Pakketprovider daadwerkelijk in andere PackageManagement pakket providers.At the PackageManagement package provider layer, the PSModule package provider actually calls into other PackageManagement package providers. Bijvoorbeeld, wanneer u werkt met NuGet gebaseerde galerieën (zoals de PowerShell Gallery), de PSModule Pakketprovider gebruikt de NuGet-Pakketprovider werkt met de opslagplaats.For example, when you are working with NuGet-based galleries (such as the PowerShell Gallery), the PSModule package provider uses the NuGet Package Provider to work with the repository.

PowerShellGet-architectuur

Afbeelding 1: PowerShellGet architectuurFigure 1: PowerShellGet Architecture

Wat is vereist voor het uitvoeren van PowerShellGet?What is required to run PowerShellGet?

In het algemeen is het raadzaam verzamelen van de meest recente versie van de module PowerShellGet (Let erop dat deze .NET 4.5 is vereist).In general we recommend picking the latest version of PowerShellGet module (note that it requires .NET 4.5).

De PowerShellGet module vereist PowerShell 3.0 of hoger.The PowerShellGet module requires PowerShell 3.0 or newer.

Daarom PowerShellGet moet een van de volgende besturingssystemen:Therefore, PowerShellGet requires one of the following operating systems:

  • Windows 10Windows 10
  • Windows 8.1 ProWindows 8.1 Pro
  • Windows 8.1 EnterpriseWindows 8.1 Enterprise
  • Windows 7 SP1Windows 7 SP1
  • Windows Server 2016Windows Server 2016
  • Windows Server 2012 R2Windows Server 2012 R2
  • Windows Server 2008 R2 SP1Windows Server 2008 R2 SP1

PowerShellGet vereist ook .NET Framework 4.5 of hoger.PowerShellGet also requires .NET Framework 4.5 or above. U kunt installeren .NET Framework 4.5 of hoger van hier.You can install .NET Framework 4.5 or above from here.

Is het mogelijk om deze te reserveren namen voor items die in de toekomst worden gepubliceerd?Is it possible to reserve names for items that will be published in future?

Het is niet mogelijk om te hurk itemnamen.It is not possible to squat item names. Als u denkt dat een bestaand item heeft genomen de naam die aansluit bij uw object meer, probeer contact opnemen met de eigenaar van het item.If you feel that an existing item has taken the name which suits your item more, try contacting the owner of the item. Als u niet antwoord binnen een paar weken ontvangen, kunt u contact op met ondersteuning en het team PowerShell Gallery ziet er het.If you didnt get response within a couple of weeks, you can contact support and the PowerShell Gallery team will look in to it.

Hoe kan ik eigendom van items aanspraak maken?How do I claim ownership for items ?

Bekijk Item eigenaars beheren op PowerShellGallery.com voor meer informatie.Check out Managing Item Owners on PowerShellGallery.com for details.

Hoe ik omgaan met de eigenaar van een item wie is mijn item licentie schendenHow do I deal with an item owner who is violating my item license?

Wij raden de PowerShell-community samenwerken om geschillen die zich tussen item eigenaren en de eigenaren van andere items voordoen kunnen op te lossen.We encourage the PowerShell community to work together to resolve any disputes that may arise between item owners and the owners of other items. We hebben ontworpen een geschil omzettingsproces die we vragen u moet uitvoeren voordat PowerShellGallery.com beheerders intercede.We have crafted a dispute resolution process that we ask you to follow before PowerShellGallery.com administrators intercede.