![]() |
|
|
google unix.com
|
|||||||
| Fóruns | Registar | Fórum Regimento | Ligações | Álbuns | FAQ | Lista deputados | Calendário | Pesquisa | Today's Posts | Mark Forums Read |
| Programação Shell Script e Post perguntas sobre ksh, CSH, SH, BASH, Perl, PHP, SED, Awk e outros scripts shell e shell scripts línguas aqui. |
Mais UNIX e Linux Fórum Tópicos Você pode achar Helpfull
|
||||
| Fio | Thread Starter | Fórum | Respostas | Última postagem |
| dupla variável declaração | kotasateesh | Programação Shell Script e | 3 | 08-31-2007 06:29 |
| Escape Char para aspas duplas | navik_pathak | Programação Shell Script e | 1 | 01-05-2007 02:34 |
| única ou dupla cotação em SED | Asami | Programação Shell Script e | 2 | 07-17-2006 04:03 |
| Aspas dentro de uma variável | burton_1080 | Programação Shell Script e | 4 | 12-01-2005 01:44 |
| variável dupla substituição | asal_email2 | UNIX para Dummies Perguntas & Respostas | 1 | 06-14-2005 01:35 |
![]() |
|
|
Linkback | Thread Tools | Pesquisar este Thread | Rate Thread | Display Modes |
|
|
|
||||
|
Problema com aspas duplas e variável string
Olá,
Tenho output.txt um ficheiro que contém uma única linha com uma lista de arquivos com aspas: "file1.ext" "file2.ext" "file3.ext" Em um shell script, eu quero recuperar a linha e utilizá-lo como uma variável em um comando como: zip archive.zip $ LISTA I cant get it trabalho. Quando eu fisicamente digite o comando zip archive.zip "file1.ext" "file2.ext" "file3.ext", ele funciona muito bem, mas quando tento usar uma seqüência variável eu recebo um erro. Existe uma boa maneira de fazer isso? Obrigado! |
|
||||
|
Quando você digita-lo na linha de comando, as aspas não são passadas para o zip. Se você estiver usando um script (mostrá-la!), Então, se está a passar no aspas para que zip vê-los, parar de fazer isso.
Se você tem controle sobre a coisa que gera o arquivo de saída, faça-o usar um formato menos bobo. Veja como ele xargs; isso é provavelmente um bom modelo para você. |
|
||||
|
Citação:
Publique o seu código atual (ou apenas a parte relevante) para obter mais ajuda. |
|
||||
|
Citação:
Código:
LIST=$(tail -1 $FILE) cvs log -N -r$rev1:$rev2 $LIST > changelog.txt O meu arquivo tem o seguinte aspecto: Código:
"java/file1.java" "java/file2.java" "java/file3.java" "java/file4.java" "java/file5.java" É o resultado de uma transformação xslt assim, devo dizer que tenho controle sobre ela. Posso gerar um arquivo que parece isso, sem aspas e meu script funciona perfeitamente: Código:
java/file1.java java/file2.java java/file3.java java/file4.java java/file5.java Mas eu queria para embrulhar as aspas em torno de filenames em caso alguns dos ficheiros contêm whitespaces. Então, talvez eu deva trabalhar em minha folha de estilo XSL, a fim de escapar whitespaces no arquivo? |
|
||||
|
Ou se você tem a opção de torná-la um ficheiro por linha (e se preocupar com arquivos com nomes newlines em vez ...).
xargs tem uma opção para usar um nulo (ASCII 0x00) terminador para esse caso específico. (Barras e Nulos são os únicos dois personagens que não estão no diretório entrada nomes.) |
![]() |
| Marcadores |
| Thread Tools | Pesquisar este Thread |
| Display Modes | Esta taxa Thread |
|
|