[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] pequena duvida
From: |
Julio Cezar Neves - DATAPREVRJ |
Subject: |
RES: [shell-script] pequena duvida |
Date: |
Tue, 10 Jun 2003 10:37:09 -0300 |
Melhorando um pouco mais...
O Shell prioriza a execução do que está entre aspas (`), que não deve ser
confundido com apóstrofos (') que simplesmente proteje o conteúdo da
interpretaçõa do Shell. Assim qdo vc faz:
$ cat arqteste
/etc/hosts
$ cat `cat arqteste`
127.0.0.1 loopback localhost
O que o Shell faz é priorizar a execução do cat que está entre crases para
posteriormente executar o outro cat que desta forma simplesmente fará:
cat /etc/hosts
Um exemplo mais fácil é:
a=ls
$ echo "$a"
ls
$ a=`ls`
$ echo "$a"
arq
ArqErr
arql
arquivo
a.sh
...
Desta forma, eu queria executar uma atribuição (=) e uma instrução (ls).
Para fazer a atribuição corretamante, é necessário priorizar o comando, isto
é, o comando tem de ser executado antes da instrução, por isso ele tem de
ser colocado entre crases.
[ ]s,
Julio Cezar Neves
-Eu Apoio o Software Livre-
-I Support Free Software-
* +55 21 2528-7070 / 9853-4044
*address@hidden
> -----Mensagem original-----
> De: Anderson Deluiz Santos [mailto:address@hidden]
> Enviada em: terça-feira, 10 de junho de 2003 09:39
> Para: address@hidden
> Assunto: RES: [shell-script] pequena duvida
>
>
> Melhorando a definição do crase:
>
> O que está entre crases é executado pelo shell. Independe se será
> armazenado ou não por uma variável.
> Ex.:
>
> $ cat arqteste
> /etc/hosts
>
> $ cat `cat arqteste`
> 127.0.0.1 loopback localhost
>
> Anderson
>
> PS: Dá uma olhada no man do bash ou do ksh.
>
> -----Mensagem original-----
> De: Alexander F. Fernandes - Esc. EDEM [mailto:address@hidden]
> Enviada em: terça-feira, 10 de junho de 2003 06:32
> Para: address@hidden
> Assunto: Re: [shell-script] pequena duvida
>
>
> Teoricamente eu não sei explicar, mas na prática:
>
> O uso de aspas simples diz que o valor é exatamente como foi
> "escrito".
> Exemplo:
>
> echo '$HOME'
>
> O exemplo acima vai escrever na tela exatamente $HOME
>
> Aspas duplas "interpretam" o que estiver dentro delas. Exemplo:
>
> echo "$HOME"
>
> O exemplo acima vai escrever /home/joao_da_silva , supondo que você
> esteja
> logado como joao_da_silva.
>
> O apóstrofo é usado para "guardar" o resultado de um comando.
>
> Por exemplo, se você quiser armazenar em uma variável o resultado do
> comando
> ps afxu, você usa:
>
> var_teste=`ps afxu`
>
> Enfim... alguém da lista poderá explicar melhor...
>
> []'s
> Alexander
>
>
> Em Ter 10 Jun 2003 00:11, Clycio escreveu:
> > Desculpem pela dúvida de iniciante:
> >
> > Quais as diferenças e usos das Aspas, Crase e Apostrofo em shell
> > script?
> >
> > Obrigado
> >
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação,
> como perl, C etc. Quem insistir em não seguir esta regra será moderado
> sem prévio aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listasdiscussao.cjb.net
> ---------------------------------------------------------------------
>
>
> Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
> http://br.yahoo.com/info/utos.html
>
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de
> programação, como perl, C etc. Quem insistir em não seguir
> esta regra será moderado sem prévio aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
http://www.listasdiscussao.cjb.net
---------------------------------------------------------------------
Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
http://br.yahoo.com/info/utos.html
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- RES: [shell-script] pequena duvida,
Julio Cezar Neves - DATAPREVRJ <=