PowerShell unter Linux

Die PowerShell gab es schon lange unter Windows. Mittlerweile ist sie auch für Linux verfügbar. Unter openSUSE wird sie wie folgt installiert:

#!/bin/bash
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
sudo zypper install https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-beta.6/powershell-6.0.0_beta.6-1.suse.42.1.x86_64.rpm

Suchen Sie nach dem passenden PowerShell Release für Ihre Distribution.

Aufgerufen wird die PowerShell mit „powershell“. Dann kann man interaktiv Kommandos eingeben, z. B.:

#!/usr/bin/powershell
Import-Csv -Path '/etc/passwd' -Delimiter ':' -Header @("Uname","Pwd","UID","GID","GECOS","HomeDir","Shell") | Where-Object {$_.UID -eq 0} | Select-Object -Property Uname

Nun gut, „awk -F ":" '{if ($3 == 0) {print $1}}' /etc/passwd“ ist kürzer, aber mit der PowerShell stehen andere Möglichkeiten offen.

Man kann der PowerShell auch gleich ein Kommando mitgeben, z. B. „powershell -Command "& {Get-Content -Path '/etc/passwd'}"“.

Weitere Einzelheiten erfährt man mit „powershell -h“ aber leider nicht mit „man powershell“.

Update 10.01.2018

Unter „Installing PowerShell Core on macOS and Linux“ stehen Installationsanleitungen für verschiedene Distributionen.

PowerShell User
PowerShell User mit YaST anlegen

login as: power
Using keyboard-interactive authentication.
Password:
Have a lot of fun...
PowerShell v6.0.0
Copyright (c) Microsoft Corporation. All rights reserved.

https://aka.ms/pscore6-docs
Type 'help' to get help.

PS /home/power> man powershell
No manual entry for powershell
PS /home/power>
PS /home/power> Get-ExecutionPolicy
Unrestricted
PS /home/power> Test-Path $Profile
False
PS /home/power> $Profile
/home/power/.config/powershell/Microsoft.PowerShell_profile.ps1
PS /home/power> ls .config
PS /home/power>

Kommentar verfassen