Xonsh - Die Kombination von Shell und Python

  Ralf Hersel   Lesezeit: 2 Minuten  🗪 2 Kommentare

Das Beste aus zwei Welten.

xonsh - die kombination von shell und python

Als Python-Aficionado habe ich mir schon oft gewünscht, im Terminal die Power von Python zur Verfügung zu haben. Stellt sich heraus: Das geht mit Xonsh. Fragt bitte nicht, wie man das ausspricht - vielleicht 'Sonsch'? Xonsh ist eine auf Python basierende, plattformübergreifende Unix-Shell-Sprache und Eingabeaufforderung. Die Sprache ist ein Superset von Python 3.6+ mit zusätzlichen Shell-Primitiven, die man von Bash und IPython gewohnt ist. Sie funktioniert auf allen wichtigen Systemen, einschliesslich Linux, OSX und Windows. Xonsh ist für den täglichen Gebrauch von Experten und Anfängern gedacht.

Im Screenshot sieht man ein Beispiel. Innerhalb der Xonsh-Shell kann man sowohl Bash-Kommandos, als auch Python-Befehle absetzen. Diese lassen sich miteinander kombinieren. Zuerst habe ich ein ganz normales 'ls -l' eingegeben und Xonsh verhält sich wie erwartet. Dann verwende ich eine Python For-Schleife in Kombination mit dem 'ls -l' Befehl. Die Ausgabe von $(ls -l) wandle ich in eine Liste um und gebe die Listenwerte in umgekehrter Reihenfolge aus.

Das Beispiel ist nicht besonders sinnvoll, zeigt aber, was Xonsh leistet. In der Dokumentation finden sich viele weitere und mächtigere Beispiele. Die Installation der Kombi-Shell ist sehr einfach und auf der Projektseite beschrieben.

Quelle: https://xon.sh/

Tags

Xonsh, Python, Kombination, Unix-Shell-Sprache, Beispiel, Shell, Bash

kamome
Geschrieben von kamome am 25. Februar 2022 um 15:47

Die Installation […] ist […] beschrieben.

Oder apt install xonsh ;)

xonshy
Geschrieben von xonshy am 26. Februar 2022 um 16:10

Using the expression globbing is preferred to iterate files:

for filename in `.*`:
    print(filename)
    du -sh @(filename)