Pular para o conteúdo

Atribuição de Path Windows com espaços

Responder tópico
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
  • Denunciar
  • Indicar

1. Atribuição de Path Windows com espaços

Enviado em 24/06/2016 - 15:33h


Não consigo atribuir uma string do tipo "C:\Program Files (x86)\Programa1" para uma variável.
tentei :

teste='/c/Program\ Files\ \(x86\)/Program1',
teste="/c/Program\ Files\ \(x86\)/Program1",
teste=/c/Program\Files\ \(x86\)/Program1,
teste="C:\Program Files (x86)\Program1"

ao tentar imprimir na tela me retorna o seguinte:

$teste
/c/Program\

Responder tópico

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

2. Re: Atribuição de Path Windows com espaços

Enviado em 24/06/2016 - 16:36h

a forma de atribuir uma valor string a uma variavel em shell é:
variavel="minha string"

digitei no meu terminal veja:


renan@ultra:~$ teste="C:\Program Files (x86)\Programa"
renan@ultra:~$ echo $teste
C:\Program Files (x86)\Programa
renan@ultra:~$

3. Re: Atribuição de Path Windows com espaços

Enviado em 24/06/2016 - 17:23h

Obrigado pela reposta Renan.

se eu usar "echo $teste" funciona normal

porém eu estou fazendo essa atribuição dentro do .bash_profile e tentando usar algo parecido com isso:

#!/bin/bash
path="C:\Program Files (x86)\Program"
alias meupath='cd '$path

não deveria ter que usar "echo" ai.

Valeu.

4. Re: Atribuição de Path Windows com espaços

Enviado em 24/06/2016 - 17:59h

Se você quiser que o shell interprete a variável como um objeto só, você tem de colocar a avaliação do valor da variável entre aspas.

#!/bin/bash
var="1 2 3 4 5 FIM"
echo $var # Imprime “1 2 3 4 5 FIM”
echo "$var" # Imprime “1 2 3 4 5 FIM”


Isso não vale só para o comando echo, mas para qualquer substituição de valor de variável feita pelo shell, em qualquer contexto.

Aliás, espaços não são os únicos candidatos a problemas. Outros caracteres especiais do shell continuam especiais quando resultam da expansão de variáveis, a não ser que você coloque a expansão entre aspas. Tais caracteres incluem tabulações, quebras de linha, asteriscos, pontos de interrogação e de exclamação, colchetes e chaves (e talvez mais alguns outros de que eu não me lembre).

Responder tópico

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Responder tópico

Entre na sua conta para responder.

Fazer login para responder