shell-script-pt
[Top][All Lists]
Advanced

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

Re: [shell-script] Variável com " dentro


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Variável com " dentro
Date: Tue, 23 May 2006 18:48:22 -0300

$ ./teste.sh
+ A='"123"'
+ echo '"123"'
"123"

onde tem aspa a mais ??? tem no DEBUG do BASH apenas.

Mostre claramente qual o seu problema, onde tem aspas a mais, mostra
todo o comando tar que vc quer sem histeria, ok ?

Em 23/05/06, Alain M.<address@hidden> escreveu:
Não funciona. Eu acho que não estou conseguindo me explicar:
O bash coloca algumas aspas simples a mais na expansão da variável que
srão depois eliminadas pelo comando echo. Mas se fizer isso no tar (por
exemplo) dá erro. O resultado parece certo mas o comando TEM UMAS ASPAS
A MAIS

Salve este script e execute que no debug é que dá para ver!
#!/bin/bash
set -x
A=\"123\"
echo $A

Help please,
Alain

Tiago Barcellos Peczenyj escreveu:
> simples: englobe com aspas simples:
>
> $ VAR=' --newer="Mon, 22 May 2006 22:19:27 -0300"'
>
> $ echo tar $VAR
> tar --newer="Mon, 22 May 2006 22:19:27 -0300"
>
> $ eval tar $VAR
> tar: You must specify one of the `-Acdtrux' options
> Try `tar --help' or `tar --usage' for more information.
>
>
> Em 23/05/06, Alain M.<address@hidden> escreveu:
>> O que eu preciso é de um string com aspas dentro! O conteúdo deveria ser:
>>    X="123"
>> Incluíndo o X= e sa aspas, ou seja 7 caracteres. Daí eu preciso colocar
>> na linha de outro comando sel as aspas simples.
>>
>> OBS na verdade é para o tar: a variável deve ser
>>    --newer="Mon, 22 May 2006 22:19:27 -0300"
>> e depois o camando deve ser
>>    tar --newer="Mon, 22 May 2006 22:19:27 -0300" ...etc
>> só que aparecem aspas simples :( :(
>>
>> Alain
>>
>> Tiago Barcellos Peczenyj escreveu:
>>> Se vc tem uma variavel cujo corpo é composto de algo circundado de
>>> caracteres, vc pode fazer assim:
>>>
>>> A=\"123\"
>>> # 3 formas :-)
>>> eval echo $A
>>> echo $A | tr -d \"
>>> echo ${A//\"/}
>>>
>>> alguma ajuda ?
>>>
>>> Em 22/05/06, Alain M.<address@hidden> escreveu:
>>>> Eu fiz este script:
>>>>
>>>> #!/bin/bash
>>>> set -x
>>>> A=\"123\"
>>>> echo $A
>>>>
>>>> mas o resultado é
>>>>
>>>> + A='"123"'
>>>> + echo '"123"'
>>>> "123"
>>>>
>>>> Como que eu retiro as aspas simples na linha do echo??? Já tentei de 
tudo...
>>>>
>>>> Grato,
>>>> Alain



---------------------------------------------------------------------
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.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil


Links do Yahoo! Grupos










--
Tiago B Peczenyj
Linux User #405772

# cd /pub
# more beer


reply via email to

[Prev in Thread] Current Thread [Next in Thread]