Après que Microsoft soit tombée amoureuse de Linux (ce qui est communément devenu connu sous le nom de « Microsoft Loves Linux »), PowerShell, qui était à l’origine un composant exclusivement Windows, a été open-sourcé et rendu multiplateforme le18 août2016, disponible sur Linux et Mac OS.
PowerShell est un système d’automatisation des tâches et de gestion de la configuration développé par Microsoft. Il se compose d’un interprète de langage de commande (shell) et d’un langage de script construit sur le .NET Framework.
Il offre un accès complet aux COM (Component Object Model) et WMI (Windows Management Instrumentation), permettant ainsi aux administrateurs système de réaliser des tâches administratives sur des systèmes Windows locaux et distants ainsi que WS-Management et CIM (Common Information Model) permettant la gestion de systèmes Linux distants et de périphériques réseau.
Dans ce cadre, les tâches d’administration sont essentiellement effectuées par des classes .NET spécifiques appelées cmdlets (prononcé command-lets).
Comme les scripts shell dans Linux, les utilisateurs peuvent créer des scripts ou des exécutables en stockant des groupes de cmdlets dans des fichiers en suivant certaines règles. Ces scripts peuvent être utilisés comme des outils ou utilitaires en ligne de commande indépendants.
Table des matières
Installer PowerShell sur les systèmes Linux
Pour installer PowerShell sous Linux, nous utiliserons le dépôt officiel Microsoft qui nous permettra d’installer à travers les outils de gestion de paquets Linux les plus populaires tels que apt-get ou apt et yum ou dnf.
Installer PowerShell sur Ubuntu
Tout d’abord, importez les clés GPG du dépôt public, puis inscrivez le dépôt Microsoft Ubuntu dans la liste des sources de paquets APT pour installer 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
Installer PowerShell sur Debian11
PowerShell pour les versions de la distribution Debian est publié dans des dépôts de paquets pour une installation et mises à jour faciles.
$ 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
Installer PowerShell sur Debian10
$ 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
Installer PowerShell sur les systèmes RHEL
PowerShell pour distributions basées sur RHEL telles que CentOS Stream, Rocky, et AlmaLinux sont publiés dans les dépôts officiels Microsoft pour une installation et des mises à jour faciles.
---------- 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
Comment utiliser Powershell dans Linux
Dans cette section, nous introduirons brièvement Powershell ; où nous verrons comment démarrer powershell, exécuter quelques commandes de base et examiner comment travailler avec des fichiers, des répertoires et des processus. Puis plonger dans la façon de lister toutes les commandes disponibles, et montrer l’aide de commande et les alias.
Pour démarrer Powershell, tapez :
$ pwsh PowerShell 7.3.3 PS /root>
Vous pouvez vérifier la version de Powershell avec la commande ci-dessous :
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
Exécution de commandes Powershell de base sur Linux.
get-date [# Display current date] get-uptime [# Display server uptime] get-location [# Display present working directory]

Travailler avec des fichiers et des répertoires dans Powershell
1. Créez un nouveau fichier vide en utilisant les deux méthodes ci-dessous :
new-item tecmint.tex OR “”>tecmint.tex
Ensuite, ajoutez du contenu et consultez le contenu du fichier.
set-content tecmint.tex -value "TecMint Linux How Tos Guides" get-content tecmint.tex

2. Supprimer un fichier dans Powershell.
remove-item tecmint.tex get-content tecmint.tex

3. Créer un nouveau répertoire.
mkdir tecmint-files cd tecmint-files “”>domains.list ls

4. Pour effectuer une liste détaillée, qui affiche les détails d’un fichier/répertoire y compris le mode (type de fichier), et l’heure de dernière modification.
dir

5. Afficher tous les processus en cours sur votre système:
get-process

6. Pour afficher les détails d’un seul/groupe de processus en cours avec un nom donné, fournissez le nom du processus en argument à la commande précédente comme suit:
get-process apache2

Signification des unités dans la sortie ci-dessus:
- NPM(K) – la quantité de mémoire non paginable que le processus utilise, en kilooctets.
- PM(K) – la quantité de mémoire paginable que le processus utilise, en kilooctets.
- WS(K) – la taille du jeu de travail du processus, en kilooctets. Le jeu de travail consiste en les pages de mémoire qui ont été récemment référencées par le processus.
- CPU(s) – la quantité de temps processeur que le processus a utilisé sur tous les processeurs, en secondes.
- ID – identifiant de processus (PID).
- ProcessName – le nom du processus.
7. Pour en savoir plus, obtenez une liste de toutes les commandes Powershell pour différentes tâches:
get-command

8. Pour apprendre à utiliser une commande, consultez sa page d’aide (similaire à la page man en Unix/Linux); dans cet exemple, vous pouvez obtenir de l’aide pour la commande Describe:
get-help Describe

9. Pour voir toutes les alias de commande disponibles, tapez :
get-alias

10. Enfin, mais pas des moindres, affichez l’historique des commandes (liste des commandes que vous avez exécutées précédemment) comme suit :
history

C’est tout ! pour l’instant, dans cet article, nous vous avons montré comment installer Microsoft’s Powershell sur Linux. Pour moi, Powershell a encore beaucoup de chemin à faire en comparaison des shells Unix/Linux traditionnels qui offrent, de loin, des fonctionnalités plus intéressantes et productives pour opérer une machine depuis la ligne de commande et, ce qui est important, pour la programmation (scripting) également.
Visitez le dépôt Github de Powershell : https://github.com/PowerShell/PowerShell
Néanmoins, vous pouvez l’essayer et partager vos avis avec nous dans les commentaires.
Source:
https://www.tecmint.com/install-powershell-in-linux/