Copie e cole da linha de comando no OS X

A maioria dos usuários de Mac sabe que pode copiar e colar na área de transferência
usando este recurso que já é fornecido pelo menu Editar do aplicativo
ou usando os atalhos de teclado correspondentes Command-c e Command-v .
Mas eles sabem que o OS X também possui comandos que permitem copiar e
colar diretamente da linha de comando?

Na maioria das vezes, fico surpreso com meus parceiros de programação em par que
desconhecem esses comandos muito úteis, então achei que era uma boa oportunidade
para demonstrar como usá-los.

Digamos que eu tenha alguns testes com falha que quero compartilhar com alguém, na esperança de
que eles possam me ajudar a ser desbloqueado em uma tarefa. Existem muitas maneiras de compartilhar
os resultados, mas acho que com meus colegas de trabalho, muitas vezes postamos um Gist em
https://gist.github.com/ para que possamos revisá-lo e
comentar como uma equipe. Normalmente trabalho diretamente na linha de comando
usando o aplicativo Terminal e prefiro fazer o que for necessário
diretamente de lá em vez de usar meu trackpad para selecionar manualmente os
resultados do teste .

“Então, o que você usa para capturar os dados?”, Você pergunta?

Bem, eu geralmente procuro pbcopy .

Então, posso apenas canalizar os resultados da execução da especificação, conforme mostrado aqui:

rspec spec/models/whatevs.rb | pbcopy

Isso simplesmente executa o Rspec e o envia STDOUT(ou seja, saída padrão ) para
pbcopy , que copia os dados para a área de transferência (ou seja, área de trabalho).

Agora eu posso apenas a cabeça para o meu navegador e cole na saída de
https://gist.github.com usando o Comando-v
keystroke atalho (ou usando Editar -> Colar a partir do navegador Se você é tão
inclinado )

Agora, e se eu decidir que prefiro enviar por e-mail esta saída para um colega de trabalho como um
arquivo anexo?

Como os dados estão atualmente armazenados na área de transferência, posso usar a contraparte de
pbcopy , que, como você deve ter adivinhado, é pbpaste .

Vamos ver isso em ação:

pbpaste > ~/Desktop/whatevs-results.txt

Este comando pega os resultados armazenados na área de transferência e os redireciona para um
arquivo recém-criado na minha pasta Desktop .

Esses comandos também têm opções adicionais para especificar qual área
de trabalho usar, bem como que tipo de dados procurar, mas não vou cobrir esses
detalhes aqui, pois pessoalmente ainda não os usei. No entanto, se você estiver
interessado em detalhes, consulte man pbcopypara obter mais detalhes.

Então, da próxima vez que você precisar copiar e colar da linha de comando, tenha em mente
que você pode não precisar usar o mouse ou trackpad, mas em vez disso, pode usar uma
combinação de pbcopy e pbpaste para fazer o trabalho!

Para obter mais dicas sobre UNIX, consulte Learning the UNIX Command Line .