+ Responder ao Tópico



  1. #1

    Question Dificuldade em solucionar problema simples em script bash

    Amigos, boa tarde

    Não estou conseguindo receber o resultados desejado em meu script bash, alguém poderia ajudar?

    script.sh
    #!/bin/bash

    MIRROR=/repo

    cat <<EOF > /etc/apt/mirror.list


    set base_path $MIRROR
    set mirror_path $base_path/mirror
    EOF

    Resultado que recebo:
    $cat mirror.list
    set base_path /repo
    set mirror_path /mirror

    Preciso deste resultado:
    set base_path /repo
    set mirror_path $base_path/mirror

    Como posso fazer?

    Obrigado...

  2. #2

    Padrão Re: Dificuldade em solucionar problema simples em script bash

    Você quer que apareça o "$base_path" ?
    Não estou com um linux perto pra testar, mas tenta colocar uma barra "" antes do $. Realmente não lembro a sintaxe, mas você vai ter que fazer um "escape" desse símbolo para que o bash não tente interpretá-lo e tratá-lo como variável ...

    Abraço ...

  3. #3

    Padrão Re: Dificuldade em solucionar problema simples em script bash

    Citação Postado originalmente por rogfanther Ver Post
    Você quer que apareça o "$base_path" ?
    Não estou com um linux perto pra testar, mas tenta colocar uma barra "" antes do $. Realmente não lembro a sintaxe, mas você vai ter que fazer um "escape" desse símbolo para que o bash não tente interpretá-lo e tratá-lo como variável ...

    Abraço ...
    Só existe esta maneria? ou tem uma maneira de engloba tudo?

    Obrigado

  4. #4

    Padrão Re: Dificuldade em solucionar problema simples em script bash

    como assim englobar tudo ? Não ficou claro pra mim se você quer que apareça o conteúdo da variável base_path, ou se quer que apareça a string de caracteres $base_path ...

    Se for pra aparecer o conteúdo, tem que atribuir o conteúdo antes da parte do cat .
    Se for pra aparecer a string, tem que "escapear" o cifrão porque o bash interpreta ele.

    Como é dentro de um arquivo, acho que você poderia talvez usar print ou echo redirecionando para o arquivo.Mas também tem que ter alguns cuidados com a sintaxe, para também não tentar interpretar os caracteres especiais ..

  5. #5
    Moderador Avatar de Bruno
    Ingresso
    Nov 2002
    Localização
    Guarapuava-PR
    Posts
    4.181
    Posts de Blog
    1

    Padrão Re: Dificuldade em solucionar problema simples em script bash

    usa \ antes do $