Como escapar “!” e “&” em varibles do ambiente do docker

11

Eu tenho um contêiner de janela de encaixe que desejo executar e entrego algumas senhas. Um com um ponto de exclamação ! e outro com um e comercial & . Então eu quero rodar isso:

docker run -i -t --rm \
-e "LDAP_FILTER=(&(objectCategory=person)(objectClass=user)" \
-e "LDAP_PASS=Secret!Password" \
user-prefix/container-name

Isso não funciona. & é substituído por {LDAP_FILTER} e ! são truncados. Tenho certeza que tenho que escapar disso. Mas \! e \& não deram certo.

    
por DASKAjA 30.06.2014 / 18:04

1 resposta

13

Eu encontrei uma solução:

  • Usando aspas simples em vez de aspas duplas
  • Escape o e comercial & para \&
  • Não escapa do ponto de exclamação !

então isso funciona:

docker run -i -t --rm \
-e 'LDAP_FILTER=(\&(objectCategory=person)(objectClass=user)' \
-e 'LDAP_PASS=Secret!Password' \
user-prefix/container-name
    
por 02.07.2014 / 09:31