Como abrir o Prompt de Comando em uma pasta específica como Administrador?

34

Eu fiz um atalho para o cmd.exe e especifiquei a pasta na qual gostaria de iniciar. Em seguida, fui para Avançado e marquei Executar como administrador .

Quando eu clico duas vezes no atalho, ele sempre começa em C:\Windows\System32 .

O que eu sinto falta? Como posso obter a linha de comando para iniciar na pasta especificada?

    
por AngryHacker 21.04.2016 / 00:38

8 respostas

32

No alvo, você deve especificar cmd /k cd c:\crp

    
por 21.04.2016 / 00:43
45

Se você quiser o raciocínio subjacente, o Start in é explicitamente ignorado quando a elevação é executada (somente em binários que fazem parte do próprio Windows) para proteger contra uma potencial vulnerabilidade de segurança.

A idéia básica é que as DLLs potencialmente maliciosas localizadas no diretório de trabalho podem ser controladas por um usuário diferente do administrador atual e, em seguida, podem ser carregadas com privilégios altos. Para evitar isso, o UAC redefinirá o diretório de trabalho. Como os atalhos "Start in" são definidos antes que a elevação ocorra, isso é redefinido durante a elevação. Em um mundo ideal, essa proteção se aplicaria a todas as elevações, mas só se aplica aos binários internos do Windows, pois quebra alguns programas de terceiros que esperam que o diretório de trabalho seja preservado.

As outras respostas ignoram isso, dizendo a cmd elevada para alterar seu diretório de trabalho após a elevação, via argumento /k .

    
por 21.04.2016 / 05:49
24

Dentro do Explorer, há uma barra de ferramentas de acesso rápido (QAT) desde a intrusão da Faixa de Opções no Windows 8. Clique em File - > open CMD prompt - > Open CMD prompt as admin e crie um clique com o botão direito e selecione-o como QAT.

Agoravocêpodeclicarnesteíconeemtodasaspastasquevocêgostaeocmdagoraabrenestapasta.

ParaexecutarocmdcomoadminmaisrápidoapartirdoQAT,pressioneateclaALTevocêveráumnúmeroparaaposiçãonoQAT.

Se você agora pressionar o número, a ferramenta nesta posição é iniciada (no meu caso, 4 executa o cmd como admin).

    
por 21.04.2016 / 06:20
7

Barlop está correto. Se você adicionar /k cd "\path\to\folder" ao campo Destino (após cmd.exe ), a janela Prompt de Comando resultante executará o comando cd e, em seguida, deixará você com uma solicitação para fazer o que quiser. Se você precisar mudar para uma unidade diferente, precisará de cd /d em vez de apenas cd . Se você precisar mudar para uma unidade de rede, use pushd - ela monta automaticamente o caminho UNC de destino como uma unidade e altera para ele.

A opção /k para cmd significa "faça este comando e k eep o prompt aberto." Tudo após o /k é tratado como um comando literal, então você não precisa se preocupar em escapar. Você pode usar && para executar vários comandos: cd "\path\to\folder" && echo Hi! produzirá um prompt nesse diretório com Hi! impresso na parte superior.

O equivalente de /k que não mantém o prompt é /c (para "executar este c ommand").

    
por 21.04.2016 / 00:47
3

Na verdade, isso não é o que você está pedindo, mas quando eu entendi bem, isso vai conseguir o que você tenta contornar. tente shift + rightclick na pasta específica e selecione open command window here . Caso isso não seja seu problema, apenas me avise e eu removerei isso.

E (graças a Bob; não sabia disso antes também), é até possível fazer isso de forma elevada.

Fonte do comentário do Bob .

[...]While we are here we can also add the required keys to open an elevated prompt of every drive letter attached to the system. This can easily be accomplished by adding an entry in the registry. So copy/paste the text below into a text file and give it a name of something like “admin.reg” and double-click it.

Windows Registry Editor Version 5.00    
[-HKEY_CLASSES_ROOT\Directory\shell\runas]       
[HKEY_CLASSES_ROOT\Directory\shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"=""    
[HKEY_CLASSES_ROOT\Directory\shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""    
[-HKEY_CLASSES_ROOT\Directory\Background\shell\runas]    
[HKEY_CLASSES_ROOT\Directory\Background\shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"="" 
[HKEY_CLASSES_ROOT\Directory\Background\shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""    
[-HKEY_CLASSES_ROOT\Drive\shell\runas]    
[HKEY_CLASSES_ROOT\Drive\shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"=""    
[HKEY_CLASSES_ROOT\Drive\shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""

Now if you shift-right click on any folder you will see both options.

    
por 21.04.2016 / 16:52
1

Quando você abre o prompt de comando como administrador e ele está mostrando "C: \ Windows \ System32" tudo o que você precisa fazer é digitar "cd .." e ele levará até um diretório que será "C: \ Windows". Repita "cd .." novamente para ir para "C: \" de onde você pode agora "cd Users / name / folder"

    
por 09.07.2017 / 18:02
1

Para qualquer um, como eu, que tropeçou nisso ao tentar abrir cmd como administrador em uma unidade separada ("E:" no meu caso), você pode ter tido problemas ao tentar cd E:/somedir ou algo semelhante. Fazer isso não mudará o diretório para a nova unidade.

Se este é um problema seu e você só precisa usar o cmd como administrador em uma unidade diferente , a sintaxe cmd é na verdade apenas E: (ou qualquer letra de unidade), sem cd comando.

Então você pode simplesmente:

  1. Pesquisa do Windows > "cmd" > Clique com o botão direito > Executar como administrador
  2. Basta digitar E: (ou qualquer letra de drive para a qual você deseja alternar seguido de dois pontos)
por 26.03.2018 / 18:52
1

Se você precisar iniciar a partir de uma unidade diferente (por exemplo, D: \ alguma coisa) do que a unidade do sistema (por exemplo, C: \ Windows \ system32), coloque o seguinte no campo "Destino":

cmd /k "cd /d D:\<your directory here>"

A chave aqui é adicionar a opção /d na frente do seu cd .

    
por 04.08.2018 / 00:31