Principal Janelas Como fazer check-in de um arquivo em lote se você estiver executando-o elevado

Como fazer check-in de um arquivo em lote se você estiver executando-o elevado



Às vezes, é útil verificar se um arquivo em lote foi iniciado em um prompt de comando elevado ou como um administrador. Gostaria de compartilhar com vocês um truque que estou usando para fazer isso. A ideia principal do meu truque é baseada no valor da variável de ambiente especial% errorlevel% que armazena o código de saída para a maioria dos aplicativos e comandos de console. Vamos ver isso em ação.

Propaganda


Quando algum aplicativo de console termina seu trabalho corretamente, a variável% errrorlevel% armazena 0 como seu valor.
Abra uma nova instância do prompt de comando e execute o comando 'dir'. Depois disso, imprima o valor% errorlevel% usando o comando 'echo':

dir echo% errorlevel%

Ele produzirá 0 como saída.
nível de erro dir
Agora, vamos tentar executar um comando que requer elevação, a partir de uma janela de prompt de comando normal não elevada. Por exemplo, vamos tentar o Abrir arquivos comando que requer direitos de administrador.
Se você imprimir o valor% errorlevel%, ele não será 0 porque o comando openfiles não mostrará os arquivos abertos sem direitos de administrador.
openfiles errorlevel 1
No entanto, se você executá-lo em um prompt de comando elevado ( aqui está como abrir um prompt de cmd de administração ), ele mostrará os arquivos abertos e retornará 0, conforme o esperado.
openfiles errorlevel 0
Usando este recurso, é possível implementar uma verificação simples no arquivo batch:

@echo off openfiles> NUL 2> & 1 if NOT% ERRORLEVEL% EQU 0 goto NotAdmin echo Hello do prompt de comando elevado goto End: NotAdmin echo Este prompt de comando NÃO ESTÁ ELEVADO: End

Observe que eu uso o redirecionamento de saída para suprimir qualquer saída do comando openfiles. Na parte '> NUL 2> & 1', a saída padrão do comando é redirecionada para lugar nenhum (NUL), e a saída de erro é redirecionada para a saída padrão, ou seja, também para NUL.
Em vez do comando openfiles, você pode usar qualquer comando que requeira elevação, por exemplo, o sessão de rede comando.
É isso aí.

Artigos Interessantes

Escolha Do Editor

Como converter cabo coaxial para HDMI
Como converter cabo coaxial para HDMI
Atualizado: 30/05/2021 Se você comprar uma TV nova, é provável que ela não tenha um conector coaxial. Ele pode ter vários conectores HDMI, USB e componente, mas nenhum coaxial. Se você tiver uma caixa de cabo ou satélite mais antiga
Posso definir o Google Maps como padrão em um iPhone? Não
Posso definir o Google Maps como padrão em um iPhone? Não
Muitos usuários gostam do Google Maps, especialmente porque funciona bem com outros produtos do Google. No entanto, os usuários do iPhone não obtêm o aplicativo por padrão e ficam presos ao Apple Maps inicialmente. Embora você possa obter o Google Maps,
Análise do Western Digital WD TV Live
Análise do Western Digital WD TV Live
O WD TV da Western Digital não era um reprodutor de mídia comum. Com pouco mais do que uma porta HDMI na parte traseira, sem armazenamento interno e sem recursos de rede, a simplicidade era sua palavra de ordem; conecte qualquer dispositivo de armazenamento em massa USB, seja
Como espelhar o Android em um PC ou laptop
Como espelhar o Android em um PC ou laptop
Com tantos dispositivos que as pessoas usam diariamente, querer conectá-los uns aos outros parece a coisa mais natural a se fazer. Dependendo da combinação de dispositivos que você possui, essa pode ser uma tarefa bastante simples.
Como desativar a aceleração de energia no Windows 10 [versões recentes]
Como desativar a aceleração de energia no Windows 10 [versões recentes]
As versões recentes do Windows 10 vêm com um novo recurso, chamado 'Power Throttling'. Aqui está como desativar o Power Throttling no Windows 10 versão 1709 e superior.
Como fazer um álbum no SoundCloud
Como fazer um álbum no SoundCloud
Se você é um aspirante a músico sem uma gravadora, provavelmente sonha em ser descoberto por um caçador de talentos um dia. Mas até então, fazer álbuns e carregá-los em uma plataforma conveniente como o SoundCloud pode ser de imenso
Como desativar o Adobe Flash no Edge
Como desativar o Adobe Flash no Edge
Por padrão, o Windows 10 é fornecido com o Adobe Flash Player incluído no sistema operacional. Se você sentir que não precisa mais dele, veja como desativar o Flash no Edge.