UiPath Documentation
activities
latest
false
Atividades do fluxo de trabalho
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.

Get Environment Variable

Atividade Get Environment Variable, que usa essa atividade para recuperar o valor de uma variável de ambiente, fornecendo seu nome.

UiPath.Core.Activities.GetEnvironmentVariable

Use esta atividade para recuperar o valor de uma variável de ambiente fornecendo seu nome. Compreender o comportamento de recuperação específico da plataforma é essencial para criar fluxos de trabalho de automação multiplataforma confiáveis.

Observação:

No Windows, essa atividade recupera variáveis de Variáveis de ambiente de usuário com fallback para Variáveis de ambiente de processo. Em projetos multiplataforma, ele recupera apenas Variáveis de ambiente de processo . Entender como as variáveis de ambiente são carregadas dos níveis da máquina e do usuário no escopo do processo é crucial para compreender as diferenças de comportamento do Windows e entre plataformas das atividades Get Environment Variable e Set Environment Variable .

Propriedades​

Comum​

  • DisplayName - The display name of the activity. This field supports only Strings or String variables.

Entrada​

  • Variável — o nome da variável de ambiente cujo valor será recuperado. Este campo é compatível apenas com variáveis Strings ou String .

Saída​

  • ValorDaVariável — o valor da variável de ambiente selecionada.

Diversos​

  • Privado - Se selecionado, os valores de variáveis e argumentos não são mais registrados no nível Verbose.

Comportamento específico da plataforma​

Ambiente Windows​

Ao executar no Windows (configuração padrão):

  • A atividade primeiro tenta recuperar a variável do nível do Usuário (EnvironmentVariableTarget.User).
  • Se não for encontrado no nível do usuário, ele recairá nas variáveis de ambiente do nível do Processo.
  • Esse mecanismo de fallback garante que as variáveis específicas do usuário e específicas do processo estejam acessíveis.
  • As propriedades do sistema expostas por meio de System.Environment (por exemplo, MachineName, OSVersion, UserName) são sempre verificadas primeiro, independentemente do escopo.

Ambiente multiplataforma​

Ao executar em sistemas multiplataforma (Linux, macOS):

  • A atividade recupera variáveis apenas do nível do processo (EnvironmentVariableTarget.Process).
  • Isso inclui variáveis herdadas do processo pai e qualquer conjunto durante a execução do processo atual.
  • Nenhum mecanismo de fallback é usado, pois as variáveis de nível de usuário são específicas do Windows.
  • As propriedades do sistema expostas por meio de System.Environment ainda estão priorizadas e estão acessíveis.

Recuperar prioridade​

A atividade segue esta ordem de recuperação:

1. Propriedades System.Environment (todas as plataformas)​

  • Primeiro, verifica se o nome da variável solicitada corresponde a uma propriedade .NET integrada (por exemplo, CurrentDirectory, MachineName, ProcessorCount).
  • Se correspondido, retorna o valor da propriedade diretamente.

2. Variáveis de ambiente​

  • Windows: verifica o nível do Usuário primeiro e depois retorna ao nível do Processo.
  • Multiplataforma: verifica apenas o nível do processo.

Detalhes técnicos​

A atividade usa uma propriedade TargetFramework interna para determinar o contexto de execução:

  • "windows" - Usa EnvironmentVariableTarget.User com fallback no nível do processo.
  • "portable" - Usa apenas EnvironmentVariableTarget.Process .

Esse comportamento é determinado automaticamente pelo runtime da UiPath com base no ambiente de execução e não pode ser configurado manualmente por meio das propriedades da atividade.

Diferenças de comportamento​

Persistence de variável​

  • Windows: pode recuperar variáveis persistentes de nível de usuário definidas por meio de configurações do sistema Windows ou pela atividade Set Environment Variable.
  • Multiplataforma: apenas recupera variáveis disponíveis no escopo do processo atual (herdado do shell ou definido durante a execução).

Escopo das variáveis​

  • Windows: tem acesso a um escopo mais amplo de variáveis (Usuário + Processo).
  • Multiplataforma: tem acesso a um escopo mais restrito (somente Processo).

Melhores práticas​

  • Para fluxos de trabalho do Windows, você pode confiar em variáveis de ambiente de nível de usuário para configuração. O fallback automático garante que as variáveis de nível de processo ainda estejam acessíveis.
  • Para fluxos de trabalho multiplataforma, utilize apenas variáveis de ambiente transmitidas para o processo ou definidas durante a execução. Não dependa de variáveis de nível de usuário, pois elas não estarão disponíveis. Considere passar a configuração necessária por meio de argumentos de processo ou arquivos de configuração.
  • Para fluxos de trabalho portátil, crie fluxos de trabalho assumindo o escopo de nível de processo apenas para garantir um comportamento consistente entre plataformas. Teste se todas as variáveis necessárias estão disponíveis na inicialização do processo e documente claramente quaisquer pré-requisitos do ambiente.
  • Propriedades do sistema: prefira usar as propriedades System.Environment integradas do .NET (como MachineName, UserName) quando disponíveis, pois elas funcionam de forma consistente em todas as plataformas.

RetornarValor​

  • Retorna o valor da variável de ambiente como uma string.
  • Retorna uma string vazia ou nula se a variável não for encontrada (o comportamento pode variar por plataforma e versão de .NET).
  • Os valores de propriedade do sistema são retornados como strings usando .ToString().

Exemplos de cenários​

Cenário 1: leitura da variável PATH​

  • Windows: recupera com sucesso do escopo do Usuário ou Processo.
  • Linux/macOS: recupera com sucesso do escopo do processo.

Cenário 2: leitura de um conjunto de variáveis personalizadas específicas do usuário definido por meio de Propriedades do sistema do Windows​

  • Windows: recupera o valor com sucesso.
  • Linux/macOS: retorna vazio/nulo (variáveis de nível de usuário não existem).

Cenário 3: leitura do nome da máquina​

  • Todas as plataformas: recupera com sucesso da propriedade System.Environment.MachineName .

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte(opens in new window)

Quer aprender? Academia UiPath(opens in new window)

Tem perguntas? Fórum do UiPath(opens in new window)

Fique por dentro das novidades