Compilar shell script

Publicado por Marcos Miras em 25/06/2008

[ Hits: 30.519 ]

 


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

Acelerando o YUM

Turbinando o Firefox

Áudio no Skype

Instalação do Ruby e rubygems

Problemas com o PPTPD no Fedora 6

Leitura recomendada

Lendo registros formatados de arquivo de texto em bash

sudo: lendo a senha automaticamente através de shell script

Iniciando automaticamente o Firestarter com o modo gráfico sem senha

Criando um usuário exclusivo para desligar/reiniciar o PC ou para executar um programa/script

Montando partição Windows automaticamente

  

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