Um utilitário de copiar e colar da área de transferência da linha de comandos?

113

No Windows, usei utilitários de copiar e colar da área de transferência da linha de comando ...

  • pclip.exe e gclip.exe

Estas eram as portas UnixUtils para Windows (mas elas só lidavam com texto simples). Havia alguns outros utilitários Windows nativos que podiam gravar / extrair qualquer formato.

Procurei algo semelhante no Gerenciador de Pacotes Synaptic, mas não consigo encontrar nada.

Existe algo lá que eu perdi? ... ou talvez isso esteja disponível no script Bash?

O tipo de utilitário que eu gostaria será capaz de ler / escrever via std-in / std-out ou file-in / file-out, e manipular formatos Unicode, Rich Text Format, imagem, etc. ..

NB: Eu não estou atrás de um gerente da área de transferência.

    
por Peter.O 07.11.2010 / 14:47

13 respostas

116

Estou usando o xsel , mas estou usando apenas com texto simples e texto unicode.

xsel pode copiar e colar em três "pranchetas" diferentes. Por padrão, ele usa a seleção primária X Window System , que é basicamente o que está atualmente na seleção. O X Window System também possui uma seleção secundária (que não é muito usada), e uma seleção da área de transferência . Você provavelmente está procurando pela seleção da área de transferência , já que é isso que o ambiente de área de trabalho (por exemplo, Gnome, KDE, XFCE) usa para a área de transferência. Para usar isso com xsel:

xsel --clipboard < new-clipboard-contents.txt
xsel --clipboard > current-clipboard-contents.txt
    
por Adi Roiban 07.11.2010 / 14:56
76

xclip pode ser uma das suas escolhas.

cat samples.sh | xclip -sel clip

você também pode configurá-lo no arquivo .bashrc usando alias.

alias clipboard='xclip -sel clip'

A chave para colar dados binários em um arquivo com xclip é informar quais Tipos de mídia você tem na prancheta. Para PNG, você pode:

xclip -selection clipboard -t image/png -o > "'date '+%Y-%m-%d_%T''.png"

Então, agora, em ~/Dropbox/.mybashrc ;) você pode adicionar um alias (clipboard2photo) para colar facilmente no arquivo de imagem (talvez algum dia nós o teremos no Nautilus ).

    
por kit.yang 07.11.2010 / 15:13
12

Parcelite

Eu usei parcellite por muitos anos como gerente de clipboard. Ele é executado na Área de Notificação e oferece muitas opções para gerenciar tanto a Seleção Primária quanto a Área de Transferência padrão do freedesktop.org.

Tem sido minha resposta ao gerenciamento de itens da área de transferência.

    
por Marco Ceppi 07.11.2010 / 15:50
10

Recentemente, deparei com as ferramentas xclip-copyfile , xclip-cutfile e xclip-pastefile (package xclip ). Essas ferramentas permitem que você copie / recorte / cole arquivos inteiros através da linha de comando.

Você pode ver a página do manual aqui

.     
por slm 26.06.2013 / 13:52
9
O

clipit ( link ) é um gerenciador de área de transferência para o gtk que permite inserir texto a partir da linha de comando:

ls | clipit;

Editar: Atualmente, não há nada no site oficial do ClipIt , mas você pode obtê-lo em GitHub

    
por eMBee 01.09.2013 / 14:14
3

Você pode usar CopyQ para isso. Do site:

  

Gerenciador de área de transferência com recursos avançados

     
  • O CopyQ é um gerenciador de área de transferência com histórico pesquisável e editável.
  •   
  • Suporta Linux e Windows.
  •   
  • Suporte experimental para o OS X 10.9 +.
  •   
  • Armazene texto, HTML, imagens e qualquer outro formato personalizado.
  •   
  • Interface avançada de linha de comando e scripts.
  •   

Para copiar um arquivo de texto:

copyq action "cat /tmp/file.txt" "" && copyq select 0

Para copiar uma imagem (você precisa indicar o tipo MIME):

copyq write image/png - < file.png && copyq select 0

Para copiar um arquivo de dados (você precisa indicar o tipo MIME):

copyq write application/pdf - < file.pdf && copyq select 0

Verifique o wiki deles para obter mais exemplos de documentação e uso .

Você pode instalá-lo através do PPA ppa: noobslab / indicators ou baixando manualmente .deb pré-empacotado arquivos do último estábulo da seção de downloads do projeto.

    
por landroni 05.04.2014 / 18:52
2

Pastie

Um novo gerenciador de área de transferência com suporte a Indicator Applet foi lançado recentemente (embora ainda não esteja no arquivo). Além de rastrear o histórico da área de transferência de texto, ele também captura e mantém as entradas da área de transferência de dados (Arquivos, Pastas, etc) que podem ser úteis se você manipular arquivos muito por meio de um ambiente GUI / Clipboard.

Você pode adicionar o seguinte PPA : ppa:hel-sheep/pastie

    
por Marco Ceppi 07.11.2010 / 16:00
2

Se você quiser apenas copiar algum texto para a área de transferência:

echo -n "some-text" | xclip -selection clipboard

    
por Eyal Levin 29.07.2016 / 15:50
1

Acho que a ferramenta a seguir satisfaz seus requisitos:

Recorte e cole arquivos no terminal

    
por user1364523 23.11.2013 / 16:06
1

Que tal Configurações do daemon GPaste , um applet daemon de gerenciamento de área de transferência com interface DBus:

  • O GPaste é um conjunto de gerenciamento de área de transferência para o GNOME escrito em Vala
  • A aparência das configurações do GPaste foi atualizada para se ajustar melhor ao GNOME recente
  • Daemon agora totalmente sazonal (sem mais pesquisas, menos consumo de energia)
  • GPasteClipboard agora tem um sinal de "mudança de proprietário" semelhante ao do GtkClipboard
  • Nova configuração para definir a quantidade máxima de memória usada pelos dados no histórico
  • O modo FIFO foi descartado (sem design)
  • Limpeza e modernização de código
  • g_paste_history_add agora está totalmente transferido
  • g_paste_keybinder_add_keybinding agora está totalmente transferido

Instalação:

Para instalá-lo no Ubuntu 13.10 , 13.04 , 12.10 ou 12.04 , use os comandos abaixo:

sudo add-apt-repository ppa:webupd8team/gnome3
sudo apt-get update
sudo apt-get install gnome-shell-extensions-gpaste

Ou instale gpaste a synaptic package manager (e também gnome-shell-extensions-gpaste se você usar o Gnome-Shell).

Outra opção é a instalação através de software-center .

    
por v2r 05.04.2014 / 20:52
1

Estou tentando desenvolver uma solução melhor que não seja um gerenciador de área de transferência, encontrado no link . Ele não manipula RTF e HTML corretamente ainda, e imagens grandes apresentam problemas, mas fique à vontade para bifurcar e enviar patches.

    
por baitisj 19.05.2015 / 23:40
0

Para o formato RTF, utilizo este procedimento: Eu copio o texto para a área de transferência no aplicativo. Se eu não tiver certeza se é o rtf ou o que, eu uso este comando para verificar:

xclip -selection clipboard -o -t TARGETS

Quando imprime algo assim:

ALVOS

text / rtf

texto / richtext

Portanto, não posso resistir a exclamar em voz alta: "Puxa, isso é genioso! Deus abençoe o linux!" Depois da oração, apenas uma coisa óbvia segue:

xclip  -selection clipboard -o -t text/rtf > mypreciousRTFcontent.rtf

Então, eu processo tudo no libreoffice e envio para todos os meus amigos como spam.

: -)

    
por xerostomus 20.08.2016 / 05:40
0

Sim, existe. Experimente tmux , que é mais avançado que screen . Para instalar o tmux, digite isto no terminal:

sudo apt-get install tmux

Tente também gpm . Os comandos gpm e tmux podem ser uma boa combinação ...

    
por karthick87 07.11.2010 / 14:57