De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 24 de agosto de 2017
A dica de hoje é mais um presente do Júlio Cezar Neves, o Papai do Shell. Trata-se de um programa que lê dados de um arquivo ou da entrada primária e os carrega para a área de transferência.
#!/bin/bash
# Este programa lê dados de um arquivo ou da entrada
#+ primária e os carrega para a área de transferência
if ! [[ -t 0 ]] # Testa se o file descriptor 0 (entrada
#+ primária) está aberto no terminal
then
echo -n "$(< /dev/stdin)" |
xclip -selection c && \
echo "Copiado para a área de transferência"
else
if [[ -z "$@" ]] # Se não recebeu nenhum parâmetro
then
echo " Uso:
$0 - Copia ARQUIVO p/ área de transferência
Exemplo: $0 /caminho/do/arquivo
COMANDO | $0 - Copia saída de COMANDO p/ área de transf.
Exemplo: echo A B C | $0
Um +V exibirá o conteúdo copiado"
exit 1
fi
# Então parâmetro passado foi um arquivo.
if [[ ! -f "$@" ]]
then
echo Arquivo $@ não existe
exit 1
else
xclip -i -selection clipboard "$@"
echo " Arquivo "$@" copiado para área de transf."
fi
fi