cmd equivalente a “cd ~” para alterar para C: \ Users \ usuário atual \ Documents \ [duplicate]

7

Eu tenho que mudar para o Windows para a duração de um projeto.

Eu acabei de começar e já não gosto de usar cmd .

Existe um atalho para C:\Users\<current user>\Documents\ ?

    
por User1291 04.03.2016 / 10:39

4 respostas

21

Existe um atalho para C:\Users\<current user>\Documents\ ?

Não há atalho direto.

Existem algumas soluções diferentes (veja abaixo).

  1. Use uma variável de ambiente junto com cd ou cd /d

  2. Use subst ou net use para criar um mapeamento para outra letra de unidade.

  3. Instale cygwin e use bash

  4. Use powershell - o powershell suporta ~

A última solução é provavelmente a mais simples se você estiver preparado para usar powershell em vez de cmd .

Solução 1: use uma variável de ambiente junto com cd ou cd /d

Se você quiser mudar para este diretório regularmente, execute o seguinte comando:

setx DOCS %USERPROFILE%\Documents

Isso definirá permanentemente a variável de ambiente DOCS , mas para usá-la você precisa primeiro iniciar um novo cmd shell, então a variável está definida e pronta para uso:

F:\test>echo %DOCS%
C:\Users\DavidPostill\Documents

Para alterar o diretório de qualquer local, use o seguinte comando:

cd /d %DOCS%

Se você já estiver na unidade c: , basta usar:

cd %DOCS%

Crie um arquivo de lote ( docs.cmd ) e coloque-o em algum lugar no seu PATH .

docs.cmd:

@echo off
cd /d %DOCS%

Você pode então digitar docs , independentemente da sua localização atual, e você será direcionado para C:\Users\<current user>\Documents\

Solução 2: use subst ou net use para criar um mapeamento para outra letra de unidade.

Você pode usar subst :

subst x: %USERPROFILE%\Documents

E então

x:

Infelizmente, os mapeamentos de unidade não persistem durante as reinicializações.

net use persistirá nas reinicializações, por exemplo:

net use x: "\computerName\c$\pathName" /persistent:yes

Veja as respostas em Como tornar o mapeamento SUBST persistente nas reinicializações? para instruções detalhadas.

Solução 3: instale cygwin e use bash

Only just started, already hate cmd

Você pode considerar a instalação do cygwin :

Cygwin is:

  • a large collection of GNU and Open Source tools which provide functionality similar to a Linux distribution on Windows.

Depois de instalar o cygwin, você pode executar bash em um terminal cygwin.

As alternativas ao cygwin incluem msys (MingW) :

MSYS is a collection of GNU utilities such as bash, make, gawk and grep to allow building of applications and programs which depend on traditionally UNIX tools to be present. It is intended to supplement MinGW and the deficiencies of the cmd shell.

E Git para Windows :

Git for Windows provides a BASH emulation used to run Git from the command line. *NIX users should feel right at home, as the BASH emulation behaves just like the "git" command in LINUX and UNIX environments.

Solução 4: use powershell

Como apontado em um comentário feito pelo SBI , o powershell suporta ~ e você pode digitar:

cd ~/documents

Se você tiver caracteres estranhos em seu nome de usuário (por exemplo, se o seu nome de usuário for um endereço de e-mail), cite o seguinte:

cd "~/documents"

Mas também preciso ser capaz de executar um atalho!

However, to run Intel's icl, I require a shortcut to C:\Windows\SysWOW64\cmd.exe /E:ON /V:ON /K ""C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2016.2.180\windows\bin\ipsxe-comp-vars.bat" ia32 vs2015".

Does powershell provide the necessary options as well?

Você pode criar um atalho normalmente para executar o comando acima.

Em seguida, execute o atalho a partir do powershell, por exemplo:

 Invoke-Item -Path C:\Users\Dex\Desktop\Notepad++.lnk 

E:

 Start-Process -FilePath  C:\Users\DDhami\Desktop\Notepad++.lnk 

Fonte Truque do PowerShell: Execute o arquivo .lnk .

Leitura Adicional

  • Um índice A-Z da linha de comando do Windows CMD - Uma excelente referência para todas as coisas relacionadas à linha do Windows cmd.
  • cd - Alterar diretório - Selecionar uma pasta (e unidade)
  • setx - Defina as variáveis de ambiente permanentemente, SETX pode ser usado para definir as variáveis de ambiente para a máquina (HKLM) ou usuário atualmente conectado (HKCU).
  • subst - Substitua uma letra de unidade por uma rede ou caminho local.
por 04.03.2016 / 12:26
10

Solução 5: Doskey

Não tenho certeza se você está por perto desde o DOS days. No entanto, é possível substituir o comportamento do comando usando macros doskey. É muito divertido e não requer que você instale qualquer software de terceiros.

Aqui está um bom exemplo:

doskey cd=if "$1" equ "~" ( cd /d %userprofile%\Documents ) ELSE ( cd $* )

E uma captura de tela vencedora para acompanhar.

    
por 04.03.2016 / 16:22
7

% userprofile% funciona para chegar à pasta de perfil do usuário - assim você não precisa especificar a letra da unidade.

i.e. em vez de usar cd C:\%HOMEPATH%\Documents , você pode usar apenas cd %USERPROFILE%\Documents

    
por 04.03.2016 / 10:52
4

Você pode usar %HOMEPATH% . Ele irá levá-lo ao seu diretório home, assim como o til faz no linux. Então, para chegar ao local desejado, o comando é:

cd C:\%HOMEPATH%\Documents\
    
por 04.03.2016 / 10:45