Wenn Sie Daten in die Zwischenablage kopiert haben

Wenn Sie Daten in die Zwischenablage kopiert haben

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 x509das 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

Für OS X, pbpasteund pbcopymachen Sie, was Sie wollen – Einfügen und Kopieren mit stdin/stdout.Quelle

Für X (wie in X11/Xorg) gibt es xclip. Das Schreiben der Ausgabe nach stdout kann mit dem -outParameter ausgewählt werden.Quelle

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

xclipkann 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 echoes.

cert='-----BEGIN CERTIFICATE----- ...'; 
echo $cert | ...`

Wenn sich die Daten in einer Datei befinden

Wie jeder weiß, catmachen Sie den Job.
cat /path/to/file | ...

Wenn die Daten im Web sind

wgetkann verwendet werden, um eine Online-Datei zu caten. Vorausgesetzt, es handelt sich um eine Textdatei.
wget -O- www.site.com/path/to/file.txt | ...

verwandte Informationen