Transferência manual de pacotes
O Galeria do PowerShell suporta a transferência direta de um pacote a partir do site, sem utilizar os cmdlets do PowerShellGet. Pode transferir qualquer pacote como um ficheiro de pacote NuGet (.nupkg
), que pode copiar para um repositório interno.
Nota
A transferência manual do pacote não se destina a substituir o Install-Module
cmdlet.
A transferência do pacote não instala o módulo ou script. As dependências não estão incluídas no pacote NuGet transferido. As seguintes instruções são fornecidas apenas para fins de referência.
Utilizar a transferência manual para adquirir um pacote
Cada página tem uma ligação para Transferência Manual, conforme mostrado aqui:
Para transferir manualmente, clique em Transferir o ficheiro nupkg não processado. É copiada uma cópia do pacote para a pasta de transferência do browser com o nome <name>.<version>.nupkg
.
Um pacote NuGet é um arquivo ZIP com ficheiros adicionais que contêm informações sobre o conteúdo do pacote. Alguns browsers, como o Internet Explorer, substituem automaticamente a extensão de .nupkg
ficheiro por .zip
. Para expandir o pacote, mude o nome do .nupkg
ficheiro para .zip
, se necessário, e, em seguida, extraia os conteúdos para uma pasta local.
Um ficheiro de pacote NuGet inclui os seguintes elementos específicos do NuGet que não fazem parte do código empacotado original:
- Uma pasta com o nome
_rels
- contém um.rels
ficheiro que lista as dependências - Uma pasta com o nome
package
- contém os dados específicos do NuGet - Um ficheiro com o nome
[Content_Types].xml
- descreve como as extensões como o PowerShellGet funcionam com o NuGet - Um ficheiro com o nome
<name>.nuspec
- contém a maior parte dos metadados
Instalar módulos do PowerShell a partir de um pacote NuGet
Nota
Estas instruções NÃO dão o mesmo resultado que executar Install-Module
. Estas instruções cumprem os requisitos mínimos. Não se destinam a ser um substituto para Install-Module
.
Alguns passos efetuados por Install-Module
não estão incluídos.
A abordagem mais fácil é remover os elementos específicos do NuGet da pasta. Remover os elementos deixa o código do PowerShell criado pelo autor do pacote. Para obter a lista de elementos específicos do NuGet, veja Utilizar a transferência manual para adquirir um pacote.
Os passos são os seguintes:
- Desbloqueie o ficheiro de pacote NuGet (
.nupkg
) transferido pela Internet, por exemplo, comUnblock-File -Path C:\Downloads\module.nupkg
o cmdlet. - Extraia o conteúdo do pacote NuGet para uma pasta local.
- Elimine os elementos específicos do NuGet da pasta.
- Mude o nome da pasta. Normalmente, o nome da pasta predefinido é
<name>.<version>
. A versão pode incluir-prerelease
se o módulo estiver marcado como uma versão de pré-lançamento. Mude o nome da pasta para apenas o nome do módulo. Por exemplo,azurerm.storage.5.0.4-preview
torna-seazurerm.storage
. - Copie a pasta para uma das pastas no
$env:PSModulePath value
.$env:PSModulePath
é um conjunto de caminhos delimitados por ponto e vírgula em que o PowerShell deve procurar módulos.
Importante
A transferência manual não inclui quaisquer dependências necessárias para o módulo. Se o pacote tiver dependências, têm de ser instalados no sistema para que este módulo funcione corretamente. O Galeria do PowerShell mostra todas as dependências necessárias para o pacote.
Instalar scripts do PowerShell a partir de um pacote NuGet
Nota
Estas instruções NÃO dão o mesmo resultado que executar Install-Script
. Estas instruções cumprem os requisitos mínimos. Não se destinam a ser um substituto para Install-Script
.
A abordagem mais fácil é extrair o pacote NuGet e, em seguida, utilizar o script diretamente.
Os passos são os seguintes:
- Desbloqueie o ficheiro de pacote NuGet (
.nupkg
) transferido pela Internet, por exemplo, comUnblock-File -Path C:\Downloads\package.nupkg
o cmdlet. - Extraia o conteúdo do pacote NuGet.
- O
.PS1
ficheiro na pasta pode ser utilizado diretamente a partir desta localização. - Pode eliminar os elementos específicos do NuGet na pasta.
Para obter a lista de elementos específicos do NuGet, veja Utilizar a transferência manual para adquirir um pacote.
Importante
A transferência manual não inclui quaisquer dependências necessárias para o módulo. Se o pacote tiver dependências, têm de ser instalados no sistema para que este módulo funcione corretamente. O Galeria do PowerShell mostra todas as dependências necessárias para o pacote.
PowerShell Gallery