У меня есть текст в буфере обмена. Я хочу переместить его в терминал и передать в другую команду.
Точный вариант использования — сертификат X509 в кодировке PEM на веб-сайте, представленный в виде текста ( -----BEGIN CERTIFICATE----- ...
). Я хочу выбрать его, скопировать, а затем отправить его в терминал и передать x509
утилите OpenSSL для дампа сертификата.
Как одному коту отправить текст из буфера обмена в терминал? (Если возможно, я бы хотел сделать это и в Linux, и в OS X, поскольку я использую обе).
решение1
решение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 | ...