Ich habe Text in der Zwischenablage. Ich möchte ihn in einem Terminal ausgeben und an einen anderen Befehl weiterleiten.
Der genaue Anwendungsfall ist ein PEM-codiertes X509-Zertifikat auf einer Website, das als Text dargestellt wird ( -----BEGIN CERTIFICATE----- ...
). Ich möchte es auswählen, kopieren und dann per cat in ein Terminal einspeisen und es an x509
das Dienstprogramm von OpenSSL weiterleiten, um das Zertifikat zu sichern.
Wie überträgt man Text aus der Zwischenablage in das Terminal? (Wenn möglich, würde ich dies gerne sowohl unter Linux als auch unter OS X tun, da ich beide verwende.)
Antwort1
Antwort2
In Bezug auf xclipverwenden, ich fand das nützlich – irgendwo im Internet gefunden.
--8<-- Zwischenablage --
#!/bin/bash # Verwendung: someapp | clipboard # Leitet die Ausgabe von someapp in die Zwischenablage weiter # Zwischenablage | someapp # Leite den Inhalt der Zwischenablage in someapp weiter # wenn Befehl -v xclip 1>/dev/null; dann wenn [[ -p /dev/stdin ]] ; dann # stdin ist eine Pipe # stdin -> Zwischenablage xclip -i -selection Zwischenablage anders # stdin ist keine Pipe # Zwischenablage -> stdout xclip -o -selection Zwischenablage fi anders echo „Denken Sie daran, xclip zu installieren“ fi
Antwort3
Wenn Sie Daten in die Zwischenablage kopiert haben
xclip
kann verwendet werden, um den Inhalt der Zwischenablage auf die Standardausgabe zu drucken, sodass Sie ihn weiterleiten und verarbeiten können xclip -o -selection clipboard | ...
.
ODER
Speichern Sie es in einer Variablen und echo
es.
cert='-----BEGIN CERTIFICATE----- ...';
echo $cert | ...`
Wenn sich die Daten in einer Datei befinden
Wie jeder weiß, cat
machen Sie den Job.
cat /path/to/file | ...
Wenn die Daten im Web sind
wget
kann verwendet werden, um eine Online-Datei zu caten. Vorausgesetzt, es handelt sich um eine Textdatei.
wget -O- www.site.com/path/to/file.txt | ...