Abo
  • Services:
Anzeige
Noch plagen Microsoft die üblichen Startprobleme beim Freilegen der Powershell für Linux.
Noch plagen Microsoft die üblichen Startprobleme beim Freilegen der Powershell für Linux. (Bild: Martin Wolf/Golem.de)

Noch keine gleichwertige Alternative

Außer Frage steht wohl, dass Microsofts Ambitionen durchaus groß sind - denn der Konzern hat beträchtliche Mittel investiert, um aus der Powershell überhaupt ein Open-Source-Produkt zu machen. Aktuell gelingt es Microsoft allerdings nicht, höhere Erwartungen als die an ein Proof-of-Concept zu erfüllen. Im Github-Verzeichnis seiner Powershell führt der Hersteller eine Liste der Probleme, die aktuell die Powershell unter Linux noch betreffen. Das ist zwar einerseits löblich, denn auf diese Weise lebt Microsoft den Gedanken der Offenheit weiter. Auf der anderen Seite liest sich jene Liste wie eine Meldung aus dem Gruselkabinett. Denn teils fundamentale Funktionen sind immer noch defekt.

Anzeige

Darunter etwa das Globbing. Von Linux-Shells her sind Admins es gewohnt, dass sie mit Wildcards (* für viele Zeichen oder ? für ein Zeichen) mehrere Dateien auf der Kommandozeile dynamisch auswählen können. Das funktioniert auf der Powershell zwar auch - aber nur für Cmdlets. Wer stattdessen ein natives Linux-Binary von der Powershell aus aufruft und eine Wildcard übergibt, erhält eine Fehlermeldung, weil die Powershell das Wildcard-Zeichen nicht automatisch ersetzt. Indirekt spielt dieser Umstand auch in die eingangs beschriebene Alias-Diskussion hinein. Wenn die Aliase für die gängigen Unix-Befehle entfernt sind und die Powershell stattdessen die nativen Linux-Programme aufruft, ist etwa der Befehl ls * in einem Ordner aus diesem Grund unmöglich.

  • Get-Childitem ist ein klassisches Cmdlet, dessen Ausgabe der des schon von cmd.exe her bekannten dir gleicht. (Screenshot: Martin Loschwitz)
  • Nach der Installation von libunwind8 und libicu55 lässt sich die Powershell mit Hilfe des Deb-Pakets von Microsoft installieren. (Screenshot: Martin Loschwitz)
  • Für Shell-Skripte kann der Anwender in der Powershell in separaten Dateien beliebige Funktionen definieren, die sich ... (Screenshot: Martin Loschwitz)
  •  ... danach aus dem jeweiligen Shell-Skript aufrufen lassen. Wie klassische Unix-Shells beherrscht die Powershell umfangreiches Scripting. (Screenshot: Martin Loschwitz)
  • Dir und ls rufen unterschiedliche Programme auf - bei ls klappt das Globbing aber nicht. (Screenshot: Martin Loschwitz)
Dir und ls rufen unterschiedliche Programme auf - bei ls klappt das Globbing aber nicht. (Screenshot: Martin Loschwitz)


Das Aufrufen nativer Linux-Binaries auf der Powershell hat aber noch mehr unangenehme Nebeneffekte. Der Rückgabewert von Cmdlets ist stets ein Objekt. Die Powershell ist auf Objekte angewiesen, um Funktionen wie das Weiterleiten der Ausgabe eines Programms als Eingabe an andere Programme zu ermöglichen. Native Linux-Programme geben aber klassische Rückgabewerte aus und keine Objekte, so dass das Piping hier gar nicht erst funktioniert.

Mindestens so schwer wiegt, dass die Powershell ab Werk nicht zwischen Groß- und Kleinschreibung unterscheidet. Das betrifft vor allem fertige Powershell-Skripte aus dem Netz. Wer sich ein fertiges Skript für eine bestimmte Aufgabe herunterlädt, muss hoffen, dass dessen Autor etwa beim Laden externer Module genau den Namen benutzt, den das jeweilige Modul im Dateisystem hat. In einer Linux-Umgebung erhielte er sonst nur eine Fehlermeldung.

Das Thema Case-Sensitivity ist auch für Windows-Admins ein Problem, die über die Powershell zu Linux kommen. Beim Komplettieren der Eingabe mit der Tab-Taste etwa zeigt die Powershell unter Windows das passende Programm an, ganz gleich, ob Groß- und Kleinschreibung passen oder nicht. Wer auf Linux jedoch Mk eingibt und glaubt, das würde zu mkdir automatisch vervollständigt, der bekommt wieder nur eine Fehlermeldung.

Obendrein entwickeln sich aus liebgewonnenen Konventionen schnell Hindernisse, wenn Linux-Admins die Powershell nutzen - oder umgekehrt. Unter Windows ist es etwa möglich, über die Powershell Programme zu stoppen oder zu starten. Die passenden Befehle dafür funktionieren unter Linux freilich nicht, weil hier eigene (native) Kommandos existieren. Überhaupt müssen sich Admins umstellen, was die Notation von Befehlen angeht. Parameter bei Kommandos bekommen stets nur ein einziges - vorangestellt und sind außerdem Case-sensitive.

Wer sich von diesen Kinderkrankheiten nicht abschrecken lässt und erste Versuche mit der Powershell unternimmt, bekommt von Microsoft sehr großzügige Hilfe. Zusammen mit der Powershell für Linux stellte das Unternehmen auch fertige Beispiele für neue Cmdlets bereit und demonstriert nebenbei, wie sich Skriptsprachen - etwa Python - aus der Powershell heraus sinnvoll nutzen lassen.

Fazit

Im ersten Test erweist sich die Powershell noch als Baustelle, die altgediente Bash-Admins kaum zufriedenstellt. Angesichts der Tatsache, dass Microsoft das Werkzeug immer noch als Alphaversion betitelt und öffentliche Entwicklung (samt Bug-Suche) erst seit zwei Monaten überhaupt stattfindet, ist das aber okay. Zumal Microsoft die gesamte Entwicklung inklusive des Bug-Reportings genauso offen gestaltet wie den Quelltext der Powershell selbst. Auch das ist bei Microsoft früher bei anderen Gelegenheiten anders abgelaufen.

Viel wichtiger ist zumindest im Augenblick ohnehin das erneute Zeichen aus Richtung Microsoft, dass man in Linux nicht mehr den einstigen Erzfeind sieht, sondern einen Konkurrenten und sogar einen echten Partner für mögliche Kooperationen. Als sich der Microsoft-CEO und Ballmer-Nachfolger Satya Nadella vor einigen Monaten zusammen mit einer Powerpoint-Folie ablichten ließ, deren Text "Microsoft Loves Linux" lautete, sorgte das in der Szene für einige Belustigung. Die Veröffentlichung der Powershell für Linux und die Arbeit, die Microsoft seither in dieses und andere Produkte investiert, beweisen aber, dass das keineswegs nur eine leere Floskel war.

Klar ist auch: Die Powershell für Linux steht momentan gerade erst am Anfang ihrer Entwicklung. Behält Microsoft das aktuelle Tempo bei der Entwicklung bei, dann kann sie in absehbarer Zeit durchaus zum ernsthaften Konkurrenten für etablierte Linux-Shells werden. Und damit auch zum Segen für alle Admins, die eigentlich aus der Windows-Welt stammen, aber mit Linux aus irgendwelchen Gründen trotzdem regelmäßig in Berührung kommen. Zusammen mit dem Ansatz, die Bash auf Windows zu portieren, verschmelzen die Welten also zusehends miteinander.

Über den Autor: Martin Gerhard Loschwitz ist Team Lead Openstack bei dem Hoster Syseleven in Berlin, der unter anderem auch Golem.de hostet. Er beschäftigt sich dort bevorzugt mit den Themen Distributed Storage, Software Defined Networking und Openstack.

 Noch keine Remote-Verwaltung, dafür Scripting

eye home zur Startseite
ObjectID 03. Nov 2016

Wow, wiedermal ein Internet fight MS vs Linux. Selbst ich als c# Programmierer, Apple MDM...

kayozz 27. Okt 2016

Powershell hat zwar viel gemeinsam mit einer REPL Shell, von der Definiton gehört es...

DrWatson 27. Okt 2016

Heißt das nicht, dass man komplett in der .NET-Welt gefangen ist? Man ersetzt ja quasi...

a user 27. Okt 2016

ich glaube du weißt nicht was "Erzfeind" bedeutet.

x-beliebig 27. Okt 2016

dass sich Microsoft Linux annähern kann, kommt aus einer ganz anderen Ecke. Das hat...



Anzeige

Stellenmarkt
  1. WSW mobil GmbH, Wuppertal
  2. Robert Bosch GmbH, Abstatt
  3. Dürr IT Service GmbH, Bietigheim-Bissingen
  4. über DOWERK Fach- und Führungskräfte, deutschlandweit


Anzeige
Top-Angebote
  1. 359,00€ statt 570,00€
  2. Alte PS4 inkl. Controller + 2 Spiele + 99,99€ = PlayStation 4 Pro (1TB) | +++ACHTUNG+++ Man kann...
  3. 13,99€

Folgen Sie uns
       


  1. SUNET

    Forschungsnetz erhält 100 GBit/s und ROADM-Technologie

  2. Cisco

    Kontrollzentrum verwaltet Smartphones im Unternehmen

  3. Datenschutz

    Facebook erhält weiterhin keine Whatsapp-Daten

  4. FTTH

    Telekom will mehr Kooperationen für echte Glasfaser

  5. Open Data

    OKFN will deutsche Wetterdaten befreien

  6. Spectrum Next

    Voll kompatible Neuauflage des ZX Spectrum ist finanziert

  7. OmniOS

    Freier Solaris-Nachfolger steht vor dem Ende

  8. Cybercrime

    Computerkriminalität nimmt statistisch gesehen zu

  9. Red+ Kids

    Vodafone führt Tarif für Kinder unter zehn Jahren ein

  10. Quantencomputer

    Alleskönner mit Grenzen



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
In eigener Sache: Die Quanten kommen!
In eigener Sache
Die Quanten kommen!
  1. In eigener Sache Golem.de führt kostenpflichtige Links ein
  2. In eigener Sache Golem.de sucht Marketing Manager (w/m)
  3. In eigener Sache Golem.de geht auf Jobmessen

Elektromobilität: Wie kommt der Strom in die Tiefgarage?
Elektromobilität
Wie kommt der Strom in die Tiefgarage?
  1. Elektroauto Opel Ampera-E kostet inklusive Prämie ab 34.950 Euro
  2. Elektroauto Volkswagen I.D. Crozz soll als Crossover autonom fahren
  3. Sportback Concept Audis zweiter E-tron ist ein Sportwagen

DLR-Projekt Eden ISS: Das Paradies ist ein Container
DLR-Projekt Eden ISS
Das Paradies ist ein Container
  1. Weltraumschrott "Der neue Aspekt sind die Megakonstellationen"
  2. Transport Der Güterzug der Zukunft ist ein schneller Roboter
  3. "Die Astronautin" Ich habe heute leider keinen Flug ins All für dich

  1. Re: USA hat 320.000.000 Einwohner

    Ovaron | 18:30

  2. Re: Google, DARPA, Facebook...

    Fotobar | 18:20

  3. mydealz.de

    DY | 18:20

  4. Re: Noch mehr unfreiwilliger Seelen-Striptease!

    Fotobar | 18:17

  5. Re: Niemand hat die Absicht, Ihre Gedanken zu...

    Fotobar | 18:14


  1. 18:14

  2. 17:47

  3. 16:19

  4. 16:02

  5. 15:40

  6. 14:51

  7. 14:17

  8. 13:52


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel