Compilar shell script

Publicado por Marcos Miras em 25/06/2008

[ Hits: 31.179 ]

 


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

Repositórios para CentOS 5

Deixando seu GEdit com a cara do TextMate

Rails + Apache = mod_rails

Escutando CDs no XMMS

Instalação do Ruby e rubygems

Leitura recomendada

Script para redimensionar muitas fotos

Renomeando em massa sem precisar instalar comandos adicionais

Criar alias no Shell Fish

Instalando Astah Community no Deepin OS

Gravando logs dos comandos digitados

  

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