Pesquisa de site

Introdução ao PowerShell no Linux [Guia para iniciantes]


Depois que a Microsoft se apaixonou pelo Linux (o que popularmente ficou conhecido como “Microsoft Loves Linux”), o PowerShell, que originalmente era um Windows -apenas componente, foi de código aberto e tornou-se multiplataforma em 18 de agosto de 2016, disponível em Linux e Mac OS.

PowerShell é um sistema de automação de tarefas e gerenciamento de configuração desenvolvido pela Microsoft. É composto por um interpretador de linguagem de comandos (shell) e uma linguagem de script construída no .NET Framework.

Ele oferece acesso completo ao COM (Component Object Model) e ao WMI (Windows Management Instrumentation), permitindo assim que o sistema administradores para realizar tarefas administrativas em sistemas Windows locais e remotos, bem como WS-Management e CIM (Common Information Model) permitindo a administração de sistemas Linux remotos e dispositivos de rede.

Sob esta estrutura, as tarefas administrativas são fundamentalmente realizadas por classes específicas do .NET chamadas cmdlets (pronuncia-se command-lets).

Semelhante aos scripts de shell no Linux, os usuários podem criar scripts ou executáveis armazenando grupos de cmdlets em arquivos seguindo certas regras. Esses scripts podem ser usados como utilitários ou ferramentas de linha de comando independentes.

Instale o PowerShell em sistemas Linux

Para instalar o PowerShell no Linux, usaremos o repositório oficial da Microsoft que nos permitirá instalar através das ferramentas de gerenciamento de pacotes Linux mais populares, como apt-get ou apt e yum ou dnf.

Instale o PowerShell no Ubuntu

Primeiro importe as chaves GPG do repositório público e, em seguida, registre o repositório Microsoft Ubuntu na lista de fontes de pacotes APT para instalar o Powershell >:

sudo apt-get update
sudo apt-get install -y wget apt-transport-https software-properties-common
wget -q "https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/packages-microsoft-prod.deb"
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y powershell

Instale o PowerShell no Debian 11

O PowerShell para versões de distribuição Debian é publicado em repositórios de pacotes para fácil instalação e atualizações.

sudo apt update
sudo apt install -y curl gnupg apt-transport-https
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-debian-bullseye-prod bullseye main" > /etc/apt/sources.list.d/microsoft.list'
sudo apt update
sudo apt install -y powershell

Instale o PowerShell no Debian 10

wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install -y powershell

Instale o PowerShell em sistemas RHEL

Distribuições baseadas no PowerShell para RHEL, como CentOS Stream, Rocky e AlmaLinux, são publicadas em repositórios oficiais da Microsoft para fácil instalação e atualizações.

---------- On RHEL, CentOS, Rocky & AlmaLinux 9 ---------- 
curl https://packages.microsoft.com/config/rhel/9.0/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo
sudo dnf install --assumeyes powershell

---------- On RHEL, CentOS, Rocky & AlmaLinux 8 ----------
curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo
sudo dnf install --assumeyes powershell

---------- On RHEL/CentOS 7 ----------
curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo
sudo dnf install --assumeyes powershell

Como usar o Powershell no Linux

Nesta seção teremos uma breve introdução ao Powershell; onde veremos como iniciar o PowerShell, executar alguns comandos básicos e como trabalhar com arquivos, diretórios e processos. Mais tarde, veremos como listar todos os comandos disponíveis e mostrar a ajuda e os aliases dos comandos.

Para iniciar o Powershell, digite:

pwsh

PowerShell 7.3.3
PS /root> 

Você pode verificar a versão do Powershell com o comando abaixo:

PS /root> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.3.3
PSEdition                      Core
GitCommitId                    7.3.3
OS                             Linux 5.10.0-9-amd64 #1 SMP Debian 5.10.70-1 (2021-09-30)
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0

Executando alguns comandos básicos do Powershell no Linux.

get-date          [# Display current date]
get-uptime        [# Display server uptime]
get-location      [# Display present working directory]

Trabalhando com arquivos e diretórios no Powershell

1. Crie um novo arquivo vazio usando os dois métodos abaixo:

new-item  tecmint.tex
OR
“”>tecmint.tex

Em seguida, adicione conteúdo a ele e visualize o conteúdo do arquivo.

set-content tecmint.tex -value "TecMint Linux How Tos Guides"
get-content tecmint.tex

2. Exclua um arquivo no PowerShell.

remove-item tecmint.tex
get-content tecmint.tex

3. Crie um novo diretório.

mkdir  tecmint-files
cd  tecmint-files
“”>domains.list
ls

4. Para realizar uma listagem longa, que exibe detalhes de um arquivo/diretório, incluindo modo (tipo de arquivo) e hora da última modificação.

dir

5. Visualize todos os processos em execução no seu sistema:

get-process

6. Para visualizar detalhes de um único/grupo de processos em execução com um determinado nome, forneça o nome do processo como argumento para o comando anterior da seguinte forma:

get-process apache2

Significado das unidades na saída acima:

  • NPM(K) – a quantidade de memória não paginável que o processo está usando, em quilobytes.
  • PM(K) – a quantidade de memória paginável que o processo está usando, em quilobytes.
  • WS(K) – o tamanho do conjunto de trabalho do processo, em kilobytes. O conjunto de trabalho consiste nas páginas de memória que foram referenciadas recentemente pelo processo.
  • CPU(s) – a quantidade de tempo de processador que o processo usou em todos os processadores, em segundos.
  • ID – ID do processo (PID).
  • ProcessName – o nome do processo.

7. Para saber mais, obtenha uma lista de todos os comandos do Powershell para diferentes tarefas:

get-command

8. Para aprender como usar um comando, veja sua página de ajuda (semelhante à página man do Unix/Linux); neste exemplo, você pode obter ajuda para o comando Descrever:

get-help Describe

9. visualize todos os aliases de comando disponíveis, digite:

get-alias

10. Por último, mas não menos importante, exiba o histórico de comandos (lista de comandos que você executou anteriormente) assim:

history

Isso é tudo! por enquanto, neste artigo, mostramos como instalar o Powershell da Microsoft no Linux. Para mim, o Powershell ainda tem um longo caminho a percorrer em comparação com os shells Unix/Linux tradicionais, que oferecem recursos muito melhores, mais interessantes e produtivos para operar uma máquina a partir da linha de comando e, mais importante, para fins de programação (script). também.

Visite o repositório Powershell Github: https://github.com/PowerShell/PowerShell

No entanto, você pode tentar e compartilhar suas opiniões conosco nos comentários.