por que não compila???

1. por que não compila???

Fernando Miranda Silva
nandogbi

(usa Ubuntu)

Enviado em 22/01/2014 - 11:47h

pessoal baixei aki o shc pra compilar um sh q fiz aki mas da erro na primeira linha so que s eu der um ./script.sh ele roda normal


tai o script:


echo 'por favor digite a senha'

read senha



if [ $senha -eq 0 ];
then
clear
echo 'bem vindo'
sleep 1
clear
sleep 1



echo 'digite o numero da opção a ser escolhida'

echo '1) Criar nova mensagem de texto'
echo '2) Editar mensagem'
echo '3) Sair'

read num



case $num in

1) echo 'digite o nome do novo arquivo de texto';
read titulo;
echo 'escreva agora o conteúdo para gravar no arquivo';
read msg;
cd /home/suporte/teste/mensagens;

cat<<EOF > $titulo
$msg
EOF
;;




2) echo 'digite o nome do arquivo';
read nome;
echo 'digite o conteudo';
read conteudo;
cd /home/suporte/teste/mensagens
echo $conteudo> $nome

;;




3) echo 'finalizando...';
sleep 3;
exit
;;



*) echo 'opção desconhecida'
;;

esac



else
echo 'senha incorreta'

fi





  


2. Re: por que não compila???

Estefanio Brunhara
stefaniobrunhara

(usa CentOS)

Enviado em 22/01/2014 - 12:08h

Cadê a mensagem do erro?


3. Re: por que não compila???

Ricardo Fabiano Silva
madrugada

(usa Gentoo)

Enviado em 22/01/2014 - 12:16h

1° Shell script não é compilado, é interpretado.

2° Adicione no início do script:
#!/bin/sh 


3° Torne o script executável, caso ainda não tenha feito:
chmod +x seu_script 


4° Execute o script.


4. Re: por que não compila???

Luís Fernando C. Cavalheiro
lcavalheiro

(usa Slackware)

Enviado em 22/01/2014 - 12:32h

madrugada escreveu:

1° Shell script não é compilado, é interpretado.

2° Adicione no início do script:
#!/bin/sh 


3° Torne o script executável, caso ainda não tenha feito:
chmod +x seu_script 


4° Execute o script.


O shc converte shell script pra C e compila, Madruga. O erro mesmo é esquecer o raio da primeira linha que você indicou.


5. Re: por que não compila???

Ricardo Fabiano Silva
madrugada

(usa Gentoo)

Enviado em 22/01/2014 - 15:18h

lcavalheiro escreveu:

madrugada escreveu:

1° Shell script não é compilado, é interpretado.

2° Adicione no início do script:
#!/bin/sh 


3° Torne o script executável, caso ainda não tenha feito:
chmod +x seu_script 


4° Execute o script.


O shc converte shell script pra C e compila, Madruga. O erro mesmo é esquecer o raio da primeira linha que você indicou.


Nunca usei o shc. Seria interessante saber se ele trabalha melhor com algum interpretador em específico, ou se pode se qualquer um(sh, bash,kch,etc.).

Fernando, funcionou?


6. Re: por que não compila???

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 22/01/2014 - 18:18h

Pois é, cadê o cabeçalho do script?


7. Re: por que não compila???

Raimundo Alves Portela
rai3mb

(usa Outra)

Enviado em 24/01/2014 - 07:27h

O shc cria um outro arquivo com o shell "compilado" (o código do shell é adaptado para C e depois compilado) com o nome SEU_SCRIPT[.sh].x

Se não gerou esse arquivo o problema foi a falta da linha inicial que identifica qual interpretador seu script usa (#!/bin/bash)

http://www.vivaolinux.com.br/dica/Usando-o-SHC-um-compilador-de-ShellScript-generico/






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts