Como definir o título do CMD para o diretório de trabalho atual no Windows XP

18

Como se define o título do Prompt de Comando (CMD) no Windows XP para o diretório de trabalho atual dinamicamente? Eu posso usar

title %CD%

no entanto, esta é uma correção temporária e o título permanece fixo quando eu mudo o diretório usando o comando do CD.

    
por Stormshadow 20.05.2010 / 15:01

6 respostas

19

Funcionou graças à macro doskey do gravity. Ele usou & & combinar os comandos cd e title que funcionam perfeitamente. Eu até fiz esse carregamento de macro toda vez que eu uso o cmd, aprimorando o registro.

1) Eu criei um arquivo bat chamado cmd_title.bat e seu conteúdo é

@echo off
title %cd%

2) Coloquei este arquivo na unidade C: (C: \ cmd_title.bat)

3) Crie outro arquivo de lote chamado cmd.bat na unidade C: com o seguinte conteúdo

doskey cd = cd /d $* ^&^& "C:\cmd_title.bat"
title %cd%

(o sinalizador / d é para usar o cd para mudar para outro drive).

4) Em seguida, abrimos o regedit e acessamos o Processador HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Command . Aqui há uma chave chamada AutoRun . Modificamos o valor desta chave e configuramos para o local do arquivo cmd.bat entre aspas (por exemplo: "C: \ cmd.bat").

Agora o cd funciona como queremos toda vez que abrimos o cmd.

Basicamente & & é usado para o encadeamento de comandos no Windows

    
por 21.05.2010 / 18:51
4

Acho que o pushd e o popd são muito mais úteis do que o cd, e veriam muito mais uso se fossem mais rápidos para digitar. Resolvi os problemas de cd vs. pushd / popd e o título do diretório da janela do console com o seguinte script, que eu chamo de d.bat, que está no meu caminho.

@ echo off
rem d.bat replaces CD, PUSHD, and POPD with one command that also changes the title
rem of the console window to tell the current directory. Invoked with no arg, the
rem title is updated. Use this after changing the directory by some other means.
rem The argument / invokes popd. Any other argument invokes pushd with that arg.

if not _%1 == _ ( 
    if _%1 == _/ (
        popd
    ) else (
        pushd %*
    )
)
title %CD%
    
por 14.12.2011 / 19:06
2

Você pode alterar o título do Prompt de Comando usando o comando title .

Você pode criar um arquivo de lote (digamos mycd.bat) contendo:

title "%1"
cd  "%1"

e use-o em vez de "cd":

mycd "newdir"

Você também pode colocar o arquivo .bat no system32 se quiser que ele esteja sempre disponível.

    
por 20.05.2010 / 15:15
1

Você não pode, pelo menos não com o shell do Windows.

Ele pode ser possível adicionar sequências de escape "set Xterm title" a %PROMPT% , mas você precisaria de um emulador de terminal diferente (talvez PuTTYcyg ou algo do SfU), pois o Windows Console não suporte seqüências de escape.

Como alternativa, encontre outro shell que possa usar as funções do console do Windows para definir títulos.

Estes são frequentemente confundidos em contextos do Windows, por isso ...

shell lê e interpreta entrada; cmd.exe , command.com , /bin/sh

terminal , terminal emulador , console exibe programas baseados em texto (incluindo o shell) em sua tela; Windows Console , xterm , PuTTYcyg

    
por 20.05.2010 / 15:07
1

Assumindo que \ tools está no caminho e é onde você mantém seus arquivos em lote:

copy con: \tools\titlecmd.txt

title ^Z

copy con: \tools\cdtitle.bat

cd>\tools\cd.txt

copy \tools\titlecmd.txt+\tools\cd.txt cdtitletmp.bat

call cdtitletmp

^Z

Você agora tem um cdtitle.bat que pode chamar de outro arquivo de lote.

    
por 05.07.2010 / 23:08
1

Crie um arquivo: cd.bat e coloque o seguinte aqui:

cd %*  
title %CD%  

Emita então este comando:

doskey cd=...\cd.bat $*  

Substitua "..." pelo caminho para cd.bat. Experimente e veja se funciona.

Para tornar isso permanente-ish, crie o dosrc.cmd, coloque o comando doskey nele e crie um atalho cmd, clique nele com o botão direito e selecione properties.

Modifique o alvo a ser:

%windir%\system32\cmd.exe /K ...\dosrc.cmd  

Novamente, substitua "..." pelo caminho para dosrc.cmd

Em seguida, clique duas vezes no atalho, você deve ter a funcionalidade de cd.

    
por 19.02.2016 / 17:56