cpb - Copiando arquivos executáveis ...

Publicado por Danillo Costa em 24/04/2006

[ Hits: 6.470 ]

Blog: https://nillow.com.br/

 


cpb - Copiando arquivos executáveis ...



Olá,

Quantas vezes precisamos de ver o código-fonte de algum programa ou de um arquivo executável sem saber onde se encontra, seja para estudar ou apenas por curiosidade?

Com isso desenvolvi um script em Shell que supre uma necessidade pessoal que o comando cp não me atende com a eficiência desejada.

Do jeito normal seria necessário dois comandos para efetuar este tipo de operação:

$ whereis [Programa]
# cp [Opção] [Caminho_completo_do_programa] [Caminho_a_colar]


Para quem já tem um pouco mais de intimidade com o BASH, basta o seguinte comando que utilizei no programa:

# cp [Opção] `whereis [Programa] | sed -e "s/[Programa]://g"` [Caminho_a_colar]

Para quem quiser o programa já pronto, copie o código abaixo em um arquivo de nome cpb:

#!/bin/sh

# Autor: Danillo Costa Ferreira - hellnux
# v 0.4 - 21/04/2006
# License GPL


if [ $1 == "--help" ] ; then
 echo
 echo " Uso: cpb [Opção] [Programa] [Diretório]"
 echo
 echo " Copia arquivos executáveis sem a necessidade de digitar o caminho completo"
 echo "para o diretório desejado."
 echo
 echo " Opções:"
 echo "     -f             Faz a copia forçada, sem perguntar."
 echo "     -v             Mostra a versão."
 echo "     --help         Mostra esta mensagem."
 exit 0
fi

if [ $1 == "-v" ] ; then
 echo "Versão 0.4 - 21/04/2006 [hellnux@gmail.com]"
 exit 0
fi

if [ $1 == "-f" ] ; then
 cp $1 `whereis $2 | sed -e "s/$2://g"` $3
 exit 0
fi

cp `whereis $1 | sed -e "s/$1://g"` $2

if [ $? == 0 ] ; then
 echo " Cópia realizada com sucesso!"
 exit 0
 else
  echo " Operação não realizada com sucesso."
  exit 127
fi

Logo após de salvar, coloque o mesmo no diretório /sbin, assim basta usar o programa na linha de comando como:

$ cpb [Opção] [Programa] [Diretório]

Para os expert em Shell Script, aceito sugestões. =P

HeLLnuX Linuxzando...
Até.

Outras dicas deste autor

Liberando mais espaço em disco

Instalando o KDE 4.2 stable no Ubuntu 8.10 (intrepid-backports)

Mude a senha do root sem saber a atual no Kurumin

Ubuntu Server no VirtualBox

The Code Linux

Leitura recomendada

Como bloquear o Ultrasurf

Como atualizar o Java (JDK) no Slackware 14.2: superando o erro no sbopkg

Lendo arquivos Markdown no terminal (*.md)

Slackware 12 no Dell 320n

Utilizando NAT em containers Openvz: Iptables: No chain/target/match by that name

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts