Ricerca nel sito web

Introduzione a PowerShell in Linux [Guida per principianti]


Dopo che Microsoft si innamorò di Linux (quello che è diventato popolarmente noto come "Microsoft Loves Linux"), PowerShell, che originariamente era una versione di Windows -only, è stato open source e reso multipiattaforma il 18 agosto 2016, disponibile su Linux e Mac OS.

PowerShell è un sistema di automazione delle attività e di gestione della configurazione sviluppato da Microsoft. È costituito da un interprete del linguaggio di comando (shell) e da un linguaggio di scripting basato su .NET Framework.

Offre accesso completo a COM (Component Object Model) e WMI (Strumentazione gestione Windows), consentendo così al sistema agli amministratori di svolgere attività amministrative su sistemi Windows locali e remoti, nonché su WS-Management e CIM (Common Information Model) che consentono l'amministrazione di sistemi Linux remoti e dispositivi di rete.

In questo contesto, i compiti amministrativi sono fondamentalmente svolti da particolari classi .NET chiamate cmdlet (pronuncia command-let).

Similmente agli script di shell in Linux, gli utenti possono creare script o eseguibili memorizzando gruppi di cmdlet in file seguendo determinate regole. Questi script possono essere utilizzati come utilità o strumenti indipendenti della riga di comando.

Installa PowerShell nei sistemi Linux

Per installare PowerShell in Linux, utilizzeremo il repository ufficiale Microsoft che ci consentirà l'installazione tramite gli strumenti di gestione dei pacchetti Linux più popolari come apt-get o apt e yum o dnf.

Installa PowerShell su Ubuntu

Per prima cosa importa le chiavi GPG del repository pubblico, quindi registra il repository Microsoft Ubuntu nell'elenco delle origini dei pacchetti APT per installare 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

Installa PowerShell su Debian 11

PowerShell per le versioni della distribuzione Debian è pubblicato nei repository di pacchetti per facilitare l'installazione e gli aggiornamenti.

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

Installa PowerShell su 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

Installa PowerShell sui sistemi RHEL

PowerShell per distribuzioni basate su RHEL come CentOS Stream, Rocky e AlmaLinux sono pubblicati nei repository Microsoft ufficiali per una facile installazione e aggiornamenti.

---------- 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

Come utilizzare PowerShell in Linux

In questa sezione avremo una breve introduzione a Powershell; dove vedremo come avviare PowerShell, eseguire alcuni comandi di base e vedere come lavorare con file, directory e processi. Quindi, in seguito, scopri come elencare tutti i comandi disponibili e mostrare la guida e gli alias dei comandi.

Per avviare Powershell, digitare:

pwsh

PowerShell 7.3.3
PS /root> 

Puoi controllare la versione di Powershell con il comando seguente:

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

Esecuzione di alcuni comandi Powershell di base su Linux.

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

Lavorare con file e directory in Powershell

1. Crea un nuovo file vuoto utilizzando i due metodi seguenti:

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

Quindi aggiungi contenuto e visualizza il contenuto del file.

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

2. Elimina un file in PowerShell.

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

3. Crea una nuova directory.

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

4. Per eseguire un lungo elenco, che visualizza i dettagli di un file/directory inclusa la modalità (tipo di file) e l'ora dell'ultima modifica.

dir

5. Visualizza tutti i processi in esecuzione sul tuo sistema:

get-process

6. Per visualizzare i dettagli di un singolo/gruppo di processi in esecuzione con un determinato nome, fornire il nome del processo come argomento del comando precedente come segue:

get-process apache2

Significato delle unità nell'output sopra:

  • NPM(K): la quantità di memoria non paginata utilizzata dal processo, in kilobyte.
  • PM(K): la quantità di memoria paginabile utilizzata dal processo, in kilobyte.
  • WS(K) – la dimensione del working set del processo, in kilobyte. Il working set è costituito dalle pagine di memoria a cui ha fatto riferimento di recente il processo.
  • CPU: la quantità di tempo del processore utilizzata dal processo su tutti i processori, in secondi.
  • ID – ID del processo (PID).
  • ProcessName: il nome del processo.

7. Per saperne di più, ottieni un elenco di tutti i comandi di PowerShell per diverse attività:

get-command

8. Per imparare come utilizzare un comando, visualizza la sua pagina di aiuto (simile alla pagina man in Unix/Linux); in questo esempio puoi ottenere aiuto per il comando Descrivi:

get-help Describe

9. visualizza tutti gli alias di comando disponibili, digita:

get-alias

10. Ultimo ma non meno importante, visualizza la cronologia dei comandi (elenco dei comandi eseguiti in precedenza) in questo modo:

history

È tutto! per ora, in questo articolo ti abbiamo mostrato come installare Powershell di Microsoft in Linux. Per me, Powershell ha ancora molta strada da fare rispetto alle tradizionali shell Unix/Linux che offrono, di gran lunga migliori, funzionalità più interessanti e produttive per far funzionare una macchina dalla riga di comando e, soprattutto, per scopi di programmazione (scripting). anche.

Visita il repository Github di Powershell: https://github.com/PowerShell/PowerShell

Tuttavia, puoi provarlo e condividere le tue opinioni con noi nei commenti.