Wie kann ich die Ausgabe in ASCII-Kunst auf die Konsole?
Möchte ich Würze meine Skripte mit einigen ASCII-art angezeigt werden, die auf Abschluss eines Prozesses.
Habe ich mir 2 Gedanken auf, wie die Ausgabe in ASCII-Kunst auf die Konsole. Hoffentlich jemand, der mehr weiß als ich, weisen Sie uns auf das, was der command ist und welche Methode ist "Besser".
-
Ausgabe eine multi-line -
Write-Host
? Ich habe versucht, dies zu tun früher und es hat nicht funktioniert. Sie warf ein Bündel Fehler. Vielleicht war ich der "multi-line" - version (wenn Sie ein multi-line) version vorhanden ist. -
Speichern Sie die ASCII-Kunst ein .txt-Datei dann in meinen script irgendwie schnappen und Lesen Sie den Inhalt der .txt-Datei und schreiben Sie dann den Inhalt der Konsole in den angegebenen Bereich.
Welcher Weg ist besser? Wie kann ich diese umsetzen?
- Wo ist dein input herkommt oder bringen Sie in inline? Here-Zeichenfolge ist der beste Ansatz für die inline.
- Ich habe selten eine Notwendigkeit für die hier-strings in PowerShell, tatsächlich, da normale strings ziemlich viel die gleiche Sache.
- die Eingabe der ASCII-Kunst. Der Eingang ist entweder eingebettet, die intern im script, ODER es ist eine externe .txt-Datei, werden müssen, abgerufen und gelesen werden.
- Ich benutze diese mehr als ich tun müssen, um die Formatierung oder die regex passt. Noch eine einfache Möglichkeit, so speichern Sie Sie in ein Skript, aber ja... nicht erforderlich.
- hier sticht Griff Zitate besser. Ascii-art, die konnte wahrscheinlich haben Zitate in es.
- Ich dachte das Get-Content -Raw war die beste Methode. Vielen Dank für die Hilfe!!! Ich habe es funktioniert 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nur mit einem newline-delimited-Zeichenfolge, hier-string oder
Get-Content -Raw
wenn Sie eine Quelldatei. Beide geben Sie eine einzelne mehrzeilige Zeichenkette ohne viel Aufhebens. Eine Sache, die here-Zeichenfolge ist gut für ist, nicht mit dir über die Zitate, die Sie verwenden (das könnte eine Besondere Möglichkeit, mit ASCII-art). Ein Beispiel mit einer here-Zeichenfolge wäre die folgende:Oder wenn Sie wählen, um die Quelle-Datei-Ansatz:
Oder wenn Sie nur über PowerShell 2.0
$text = Get-Content $path | Out-String
So oder so können Sie follow-up mit
Write-Host
oder was auch immer Sie möchten, nach, dass.Immer funky mit Farben erfordern spezielle Logik, die, soweit ich weiß, existiert zur Zeit nicht. Die Herstellung einer farbigen Ausgabe randomizer ist einfach genug. Um eine grundlegende Idee, die ich präsentieren
Get-Funky
Nehmen, dass ein newline-delimited-Zeichenfolge und verwenden Sie zufällige host-Farben für anzeigen der Ausgabe. Wir verwenden splatting mit
$writeHostOptions
so könnte man leicht die Farben. Sie können sogar Parameter, die Kraft der Farben oder deaktiviert colourizing eine etc -. Hier einige Beispiel-Ausgabe:Herzen ascii art gefunden asciiworld.com
Es ist ein Stück von meinem PowerShell
$PROFILE
:Nur eine Referenz.
@'blabla'@
ist viel einfacher zu Lesen, habe ich nur kopiert aus dem Internet. 🙂PowerShell tun kann, multi-line-strings (mit allen Arten von Zeichenfolgen; diese beschränkt sich nicht auf den hier-strings), so dass die folgenden arbeiten sollten, eigentlich:
Natürlich, wenn Sie nicht in einer Funktion und nicht um irgendwelche Werte zurückgeben, können Sie einfach weglassen
Write-Host
komplett. Wenn Sie Lesen aus einer externen Datei, dann in der gleichen Vene, dieGet-Content
nur funktionieren würde:wenn Sie wirklich brauchen, " Write-Host, dann verwenden Sie einfach
Here-Zeichenfolgen sind auch ganz gute Argumente zu
Write-Host
:Unten ist ein Beispiel, mit multi-Zeile mit Write-Host
AKTUALISIERT: Entfernt die backslashes, da Sie nicht benötigt werden in der PowerShell