Nachdem Microsoft sich in Linux verliebt hatte (was im Volksmund als „Microsoft liebt Linux“ bekannt wurde), wurde PowerShell, das ursprünglich eine reine Windows-Komponente war, am 18. August 2016 quelloffen gemacht und plattformübergreifend verfügbar, sowohl auf Linux als auch auf Mac OS.
PowerShell ist ein Aufgabenautomatisierungs- und Konfigurationsverwaltungssystem, das von Microsoft entwickelt wurde. Es besteht aus einem Befehlssprachinterpreter (Shell) und einer Skriptsprache, die auf dem .NET Framework aufbaut.
Es bietet vollständigen Zugriff auf COM (Component Object Model) und WMI (Windows Management Instrumentation), wodurch Systemadministratoren administrative Aufgaben sowohl auf lokalen als auch auf entfernten Windows-Systemen sowie WS-Management und CIM (Common Information Model) zur Verwaltung entfernter Linux-Systeme und Netzwerkgeräte ausführen können.
Im Rahmen dieses Frameworks werden administrative Aufgaben grundsätzlich von bestimmten .NET-Klassen namens Cmdlets (ausgesprochen „Commandlets“) ausgeführt.
Ähnlich wie Shell-Skripte in Linux können Benutzer Skripte oder ausführbare Dateien erstellen, indem sie Gruppen von Cmdlets gemäß bestimmter Regeln in Dateien speichern. Diese Skripte können als eigenständige Befehlszeilen-Dienstprogramme oder -Werkzeuge verwendet werden.
In Linux-Systemen PowerShell installieren
PowerShell in Linux-Systemen installieren
Um PowerShell in Linux zu installieren, verwenden wir das offizielle Microsoft-Repository, das es uns ermöglicht, über die beliebtesten Linux-Paketverwaltungstools wie apt-get oder apt und yum oder dnf zu installieren.
PowerShell auf Ubuntu installieren
Importieren Sie zunächst die öffentlichen Repository GPG-Schlüssel und registrieren Sie dann das Microsoft Ubuntu-Repository in der Liste der Paketquellen von APT, um PowerShell zu installieren:
$ 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
PowerShell auf Debian 11 installieren
PowerShell für Debian-Distributionen wird in Paket-Repositories veröffentlicht, um eine einfache Installation und Updates zu ermöglichen.
$ 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
PowerShell auf Debian 10 installieren
$ 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
PowerShell auf RHEL-Systemen installieren
PowerShell für RHEL-basierte Distributionen wie CentOS Stream, Rocky und AlmaLinux werden in offiziellen Microsoft-Repositories veröffentlicht, um eine einfache Installation und Updates zu ermöglichen.
---------- 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
Verwendung von PowerShell in Linux
In diesem Abschnitt werden wir eine kurze Einführung in Powershell haben; wo wir sehen werden, wie man Powershell startet, einige grundlegende Befehle ausführt und wie man mit Dateien, Verzeichnissen und Prozessen arbeitet. Dann tauchen wir später ein, wie man alle verfügbaren Befehle auflistet und Befehlshilfe und Aliase anzeigt.
Um Powershell zu starten, geben Sie ein:
$ pwsh PowerShell 7.3.3 PS /root>
Sie können die Powershell-Version mit dem folgenden Befehl überprüfen:
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
Ausführen einiger grundlegender Powershell-Befehle unter Linux.
get-date [# Display current date] get-uptime [# Display server uptime] get-location [# Display present working directory]

Arbeiten mit Dateien und Verzeichnissen in Powershell
1. Erstellen Sie eine neue leere Datei mit den folgenden beiden Methoden:
new-item tecmint.tex OR “”>tecmint.tex
Fügen Sie dann Inhalte hinzu und zeigen Sie den Dateiinhalt an.
set-content tecmint.tex -value "TecMint Linux How Tos Guides" get-content tecmint.tex

2. Löschen Sie eine Datei in Powershell.
remove-item tecmint.tex get-content tecmint.tex

3. Erstellen Sie ein neues Verzeichnis.
mkdir tecmint-files cd tecmint-files “”>domains.list ls

4. Um eine lange Liste durchzuführen, die Details einer Datei/eines Verzeichnisses einschließlich Modus (Dateityp) und letztem Änderungszeitpunkt anzeigt.
dir

5. Alle laufenden Prozesse auf Ihrem System anzeigen:
get-process

6. Um Details eines einzelnen/ einer Gruppe von laufenden Prozessen mit einem bestimmten Namen anzuzeigen, geben Sie den Prozessnamen als Argument zum vorherigen Befehl wie folgt an:
get-process apache2

Bedeutung der Einheiten in der obigen Ausgabe:
- NPM(K) – die Menge an nicht ausgelagertem Speicher, den der Prozess verwendet, in Kilobyte.
- PM(K) – die Menge an auslagerbarem Speicher, den der Prozess verwendet, in Kilobyte.
- WS(K) – die Größe des Arbeitssets des Prozesses in Kilobyte. Das Arbeitsset besteht aus den Seiten des Speichers, auf die der Prozess kürzlich zugegriffen hat.
- CPU(s) – die Menge an Prozessorzeit, die der Prozess auf allen Prozessoren verwendet hat, in Sekunden.
- ID – Prozess-ID (PID).
- ProcessName – der Name des Prozesses.
7. Um mehr zu erfahren, erhalten Sie eine Liste aller Powershell-Befehle für verschiedene Aufgaben:
get-command

8. Um zu lernen, wie man einen Befehl verwendet, sehen Sie sich seine Hilfeseite an (ähnlich der Man-Seite in Unix/Linux); in diesem Beispiel können Sie Hilfe für den Befehl Describe erhalten:
get-help Describe

9. Um alle verfügbaren Befehlsaliasse anzuzeigen, geben Sie ein:
get-alias

10. Last but not least, zeigen Sie die Befehlshistorie an (Liste der Befehle, die Sie zuvor ausgeführt haben) wie folgt an:
history

Das war’s! Für jetzt haben wir Ihnen in diesem Artikel gezeigt, wie Sie Microsoft’s Powershell in Linux installieren können. Für mich hat Powershell immer noch einen sehr langen Weg vor sich im Vergleich zu den traditionellen Unix/Linux-Shell, die bei weitem bessere, aufregendere und produktivere Funktionen bieten, um eine Maschine von der Befehlszeile aus zu bedienen und vor allem für Programmier- (Skripting-)zwecke.
Besuchen Sie das Powershell-Github-Repository: https://github.com/PowerShell/PowerShell
Sie können es jedoch ausprobieren und Ihre Ansichten in den Kommentaren mit uns teilen.
Source:
https://www.tecmint.com/install-powershell-in-linux/