#!/bin/bash - shell script [RESOLVIDO]

Iniciado por jrmontag, 02 de Março de 2007, 09:07

tópico anterior - próximo tópico

Diego_Rocha

Assim cara o liga que coloquei era so um exemplo, tipo se seu programa chama lig, ou qualquer outro nome voce tem que colocar o nome correto do programa, faz assim so para testar cria um arquivo de texto no seu diretorio /home/jrmontag ( jrmontag é so um exemplo voce tem que entrar no seu diretorio home) crie um arquivo de texto com o nome teste, e digite isso


#!/bin/bash
echo "Meu primeiro script em bash"
echo "Vou abrir o konqueror para voce ok espere 2 segundos"
sleep 2
konqueror
echo "E ai ja usou o konqueror, e achou o que procurava, se achou digite s se nao achou digite qualquer tecla"
read tecla
if [ $tecla == "s" ]
then
echo "que bom ja vou fechar tchau"
exit
else
echo "que pena vou fechar então ok"
exit
fi


blza ja temos o script pronto agora vamos executar ele, então abre o terminal com o terminal aberto voce faz isso lembrando que vou usar jrmontag mas é so um exemplo ok


cd /home/jrmontag


agora vamos dar permissão de execução;


chmod +x teste


pronto o script ja tem permissão para ser executado então vamos executar ok


./teste


pronto voce ja tem um script agora é so usar sua criatividade espero que tenha entendido ok se não entendeu pode perguntar ok t++

jrmontag

Diego, mto obrigado !

Vou fazer os testes e lhe passo um retorno.

Não estou em casa esse final de semana, consequentemente sem Linux, mas eu te aviso.

Gde Abraços, obrigado mesmo pela pasciência e um ótimo final de semana.

Junior

jrmontag

Bom, refiz todos os passos novamente, e o erro persiste.

Seguem imagens dos procedimentos :

http://img243.imageshack.us/my.php?image=imagem1qf7.jpg
http://img408.imageshack.us/my.php?image=imagem2nx0.jpg
http://img408.imageshack.us/my.php?image=imagem3fu6.jpg
http://img132.imageshack.us/my.php?image=imagem4mx9.jpg
http://img172.imageshack.us/my.php?image=imagem5aq4.jpg
http://img339.imageshack.us/my.php?image=imagem6ty9.jpg

Se alguém puder me dar uma luz, fico mto grato, precsio mto disso.

Abraços e mais uma vez Obrigado !

Ah, lembrando q uso Kubuntu 6.10 + vmWare rodando direto do Windows XP.

Junior

Diego_Rocha

Realmente não sei o que pode ser esse script que passei pra vc funciona perfeitamente, tenta fazer o seguinte não sei se tem influencia mas coloca o arquivo no seu diretorio home e tenta executar ele denovo so pra ver se vai se não for não sei o que pode ser, pode ser que não va por estar sendo emulado mas acho que isso não tem nada a ver, realmente não sei o que é, t++

jrmontag

#19
Bom, sei q aqui não é lugar ideal, mas... no Mandrake 10 conseguir rodar o .sh, vou testar no Ubuntu.

Passos :

- Arquivo liga.sh criado no Desktop
- chmod +x liga.sh
- chmod 775 liga.sh
- ./liga.sh

Assim o .sh é aberto e as execuções são feitas.

Resumindo, apenas não entendi o pq do chmod +x e logo em seguida o 775, se alguém puder resumir.

Obrigado a todos.

Abraços
Junior

Diego_Rocha

Citação de: jrmontag online 05 de Março de 2007, 08:39
Bom, sei q aqui não é lugar ideal, mas... no Mandrake 10 conseguir rodar o .sh, vou testar no Ubuntu.

Passos :

- Arquivo liga.sh criado no Desktop
- chmod +x liga.sh
- chmod 775 liga.sh
- ./liga.sh

Assim o .sh é aberto e as execuções são feitas.

Resumindo, apenas não entendi o pq do chmod +x e logo em seguida o 775, se alguém puder resumir.

Obrigado a todos.

Abraços
Junior

1° é chmod +x liga e NÃO chmod +x liga.sh
2° nunca usei isso de chmod 775;
chmod 775, o 7 voce esta dando permissoes de leitura escrita e execução ao dono e ao user, e o 5 permissão de leitura e execução aos outros, nunca usei isso em nenhuma script meu, sempre uso so o chmod +x, x de permissão de execução,
3° ./liga.sh, esta errado quando o certo é ./liga, não tem que invetar nada é so fazer isso

chmod +x liga
./liga

so isso t++

jrmontag

liga.sh foi um exemplo, independe oq eu coloco, se com extensão .sh ou não, tanto faz, ele só executa depois q o chmod 775 é inserida, caso contrário não.

Obrigado.

arlei

É que vc executando o comando chmod +x nome_arquivo, vc estará dando permissão de execução ao mesmo apenas ao dono. E se vc executar chmod 775 nome_arquivo, vc estará dando permissão de execução ao arquivo para o dono e grupo.
Então o que deve estar ocorrendo é que vc esta querendo executar o arquivo com outro usuário que não o dono do mesmo.
Vc pode alterar isso com o comando chown, para maiores detalhes veja as paginas do manual dos comando com o man (man chown, man chmod).

T+
Arlei

jrmontag

Obrigado a todos, consegui fazer o .sh, os passos foram os seguintes :

- arquivo liga.sh criado no user/desktop ( apenas com .sh funciona, sem a extensão ele não aceita, não sei se é algo relacionado ao vmware ou coisa do tipo )
- sudo bash ( entrei como root )
- chmod +x liga.sh
- chmod 775 liga.sh
- ./liga.sh

Assim o script rodou, apenas assim, teste de tudo qto é jeito, no root, no user, no home, no desktop, sem chmod +x com chmod +x, sem 775, com 775, enfim...

Pode fechar o tópico.

arlei

Citação de: jrmontag online 05 de Março de 2007, 14:20
...

Pode fechar o tópico.

Pra isso acrescente junto ao título do seu tópico um [RESOLVIDO].

T+
Arlei

jrmontag

Arlei, título alterado, obrigado pela informação.