Если вы скопировали данные в буфер обмена

Если вы скопировали данные в буфер обмена

У меня есть текст в буфере обмена. Я хочу переместить его в терминал и передать в другую команду.

Точный вариант использования — сертификат X509 в кодировке PEM на веб-сайте, представленный в виде текста ( -----BEGIN CERTIFICATE----- ...). Я хочу выбрать его, скопировать, а затем отправить его в терминал и передать x509утилите OpenSSL для дампа сертификата.

Как одному коту отправить текст из буфера обмена в терминал? (Если возможно, я бы хотел сделать это и в Linux, и в OS X, поскольку я использую обе).

решение1

Для OS X pbpasteделайте pbcopyто, что хотите — вставляйте и копируйте с помощью stdin/stdout соответственно.Источник

Для X (как в X11/Xorg) есть xclip. Запись вывода в stdout можно выбрать с помощью -outпараметра.Источник

решение2

Что касается xclipиспользовать, я нашел это полезным - нашел где-то в сети.

--8<-- буфер обмена --

#!/bin/баш
# Использование: someapp | clipboard # Передача вывода someapp в буфер обмена
# буфер обмена | someapp # Передача содержимого буфера обмена в someapp
#

если команда -v xclip 1>/dev/null; тогда
    если [[ -p /dev/stdin ]] ; тогда
        # stdin — это канал
        # стандартный ввод -> буфер обмена
        xclip -i -выбор буфера обмена
    еще
        # stdin не является каналом
        # буфер обмена -> stdout
        xclip -o -выбор буфера обмена
    фи
еще
    echo "Не забудьте установить xclip"
фи

решение3

Если вы скопировали данные в буфер обмена

xclipможет использоваться для вывода содержимого буфера обмена на стандартный вывод, чтобы его можно было передать по конвейеру и обработать как xclip -o -selection clipboard | ....

ИЛИ

Сохраните его в переменной и echo...

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

Если данные находятся в файле

Как всем известно, catнадо делать свою работу.
cat /path/to/file | ...

Если данные находятся в сети

wgetможет быть использован для cat онлайн-файла. Предполагая, что это текстовый файл.
wget -O- www.site.com/path/to/file.txt | ...

Связанный контент