Compilar shell script

Publicado por Marcos Miras em 25/06/2008

[ Hits: 30.057 ]

 


Compilar shell script



Boas galera,

Se você tem um cliente e deseja criar scripts de backup, rotinas etc e não o faz por receio de haver cópia, pois bem, existe uma solução, que é o SHC.

O SHC ou Generic Shell Script Compiler, cria um arquivo binário executável. Ele converte para C e posteriormente para um binário executável.



Instalação:

Red-likes - você deve ter instalado o repositório rpmforge:

# yum install shc

Debian-likes:

# apt-get install shc

Utilização:

Crie um arquivo

$ vi teste

E insira o seguinte conteúdo:

#!/bin/bash
echo "Viva o Linux!"

Salve e feche o arquivo, execute o shc sobre ele:

$ shc -f -r -v teste

Onde:
  • f = arquivo a ser compilado;
  • v = modo verbose;
  • r = torna compatível com outras distros.

Ele criará dois arquivos, um chamado teste.x, que é o binário executável e outro chamado teste.x.c, que é o script convertido em C.

Torne o arquivo teste.x executável (chmod +x teste.x) e execute:

$ ./teste.x

Você pode renomeá-lo para teste.bin pra ficar mais bonitinho, lembrando também que você deve chamar o interpretador no começo do arquivo:

#!/bin/bash

Até a próxima...
Marcos Miras
www.atmsystem.com.br

Outras dicas deste autor

Excluindo arquivos por data: find + xargs + rm

Resolvendo o REDIRECT_TO do Rails em HTTPS

Rails + Apache = mod_rails

Memória de 4GB só mostra 3.3GB no Red Hat e CentOS 5

Instalação do Ruby e rubygems

Leitura recomendada

Perseidas - Snort + Suricata + ClamAV + Fail2ban

Criando texto "hacker" com SED

SBoupgrade - Atualize seu SlackBuild!

Minha solução para monitorar múltiplos termômetros no Slackware

Atualizando o Ubuntu com uma linha

  

Comentários
[1] Comentário enviado por Heitor.rj em 19/11/2015 - 13:52h

Excelente Artigo!
Apenas para contribuir e corrigir o comando:

No lugar de:
shc -f -r -v teste

O Correto é:
shc -rvf teste

Pois no Slackware não funciona assim: shc -f -r -v teste
Porque após o -f precisa informar o nome do arquivo!
Testado com a versão 3.8.7 do shc



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts