2017-11-20 18 views
6

Wie erhalten Sie Cabal, um alle verfügbaren Versionen eines Pakets zu drucken? Running cabal -v info package-name druckt so etwas; Bei vielen Varianten zur Verfügung:Wie erhalten Sie Cabal, um alle verfügbaren Versionen eines Pakets zu drucken?

Versions available: (0.1.5.5), (0.1.5.6), (0.1.6.3), (0.1.6.4), 0.1.6.5, 
        0.2.4.2, 0.2.5.0, 0.2.6.0, 0.2.7.0 (and 26 others) 
+1

Nicht befehlszeilenfreundlich, aber Sie können alle Versionen auf Hackage sehen. z.B. für [hier] (http://hackage.haskell.org/package/text) für das Textpaket. Ist das gut genug? –

+0

Ja, das ist hilfreich. Vielen Dank! –

Antwort

1

Ein indirekter Weg, dies zu erreichen, z.B. für das text Paket ist

cabal list --simple-output text | awk '$1=="text" { print $2 }' 

Die Nachbearbeitung über awk benötigt wird, da cabal list derzeit nur Teilzeichenanpassung unterstützt, aber nicht exakte Anpassung.

+0

Ich verstehe nicht, wie diese Verwendung von 'awk' im Zusammenhang mit Teilzeichenfolge verwendet wird. Es schneidet den Paketnamen aus den Ergebnissen ab und zeigt nur deren Versionen an (was eine nette Anpassung ist, aber keine notwendige). –

+2

@ JindřichMynarz Wenn Sie sich die Ausgabe anschauen, die Sie ohne das 'awk'-Addendum erhalten, werden Sie sehen, dass es viele Nicht-Text-Ergebnisse gibt, wie' Text 0.0.0' und 'Text-Zipper 0.1' und so weiter . Der 'awk' Befehl löscht diese gleichzeitig und entfernt den Paketnamen am Anfang. –

+0

Ah, richtig. Danke für die Klarstellung! –

1

Ich weiß nicht, wie Kabalen zu bekommen, es zu tun, aber die Informationen zumindest zur Verfügung. Überprüfen Sie die Hackage Seite für das Paket; typischerweise ist dies http://hackage.haskell.org/package/<package-name>. Es wird eine vollständige Liste der verfügbaren Versionen direkt nach der Paketbeschreibung enthalten.

Verwandte Themen