[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: diferença entre sh e ./



ou melhor ele só ira considerar o a shell "bash" especificada no script ,  executando com o ./ 

Em 23 de maio de 2015 00:04, Tiago Pigazao <pigazao@gmail.com> escreveu:
então independente do que for usado na execução sh ou ./ ele de certa forma não vai considerar aquele sha-bang do inicio #!bin/bash ?

Em 22 de maio de 2015 23:34, Listeiro 037 <listeiro_037@yahoo.com.br> escreveu:

Olá.

sh é um link em /bin/sh. No Debiian aponta para /bin/dash.
Dash é uma implementação do Almqvist Shell (ash) para o Debian. É
shell diferente do Bash.

./ executa o script com shell do ambiente

Dash entende as coisas diferentes do que Bash entende. São como que
linguagens de scripts diferentes.

Por isso é que há uma orientação prá se escrever scripts que funcionem
não apenas com bash ou zsh, mas com csh, ksh, dash e muitos outros. No
caso do if há dois comandos prá serem usados junto com ele chamado
expr e test.

Uma versão do seu script para Dash seria:

#!/bin/sh
for var in $(seq 100) ; do
        if test $(expr $var % 2) -eq 0
        then
                echo $var
        fi ;
done


Em Fri, 22 May 2015 23:04:25 -0300
Tiago Pigazao <pigazao@gmail.com> escreveu:

> Boa noite
>
> Pessoal alguem sabe, qual é a diferença de se executar um shell
> script com "sh" ou com "./" ?
>
> estou com o seguinte cenário..
>
> tenho um script com permissão de execução ok , ao executar com "sh"
> ele não funciona (da problema na linha do if), agora se executar com
> "./"  funciona ok... segue script abaixo :
>
> #!/bin/bash
> for var in $(seq 100) ; do
> if (( $var % 2 == 0 ))
> then
> echo $var
> fi ; done


--
To UNSUBSCRIBE, email to debian-user-portuguese-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: [🔎] 887903.3626.bm@smtp234.mail.gq1.yahoo.com" target="_blank">https://lists.debian.org/[🔎] 887903.3626.bm@smtp234.mail.gq1.yahoo.com




Reply to: