Como se define dinamicamente o título do prompt de comando (CMD) no Windows XP para o diretório de trabalho atual? Eu posso usar
title %CD%
no entanto, essa é uma correção temporária e o título permanece fixo quando eu mudo de diretório usando o comando CD.
windows
windows-xp
command-line
Stormshadow
fonte
fonte
pushd
uma das macros?Respostas:
Conseguiu funcionar graças à macro doskey da gravidade. Ele usou o && para combinar os comandos cd e title, que funcionam perfeitamente. Eu até fiz essa macro carregar toda vez que uso o cmd ajustando o registro.
1) Criei um arquivo bat chamado cmd_title.bat e seu conteúdo é
2) Coloquei este arquivo na unidade C: (C: \ cmd_title.bat)
3) Crie outro arquivo em lotes chamado cmd.bat na unidade C: com o seguinte conteúdo
(o sinalizador / d é para usar cd para mudar para outra unidade).
4) Em seguida, abrimos o regedit e vamos para HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Command Processor . Aqui há uma chave chamada AutoRun . Nós modificamos o valor dessa chave e o definimos no 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, o&& é usado para encadear comandos no Windows
fonte
doskey cd=@echo off$Tcd /d $*$T@title ^%cd^%$Techo on
@echo off
não é necessário se você apenas adicionar@
na frente dos comandos que você não deseja que ecoem. Eu também achei este comando mais útil para definir o título para apenas o nome do diretório atual em vez do caminho completo@for %%* in (.) do @title %%~nx*
Eu acho que pushd e popd são muito mais úteis que o cd, e seriam muito mais úteis se fossem mais rápidos de digitar. Resolvi os problemas do cd vs. pushd / popd e do título do diretório da janela do console com o seguinte script, que chamo de d.bat, que está no meu caminho.
fonte
Você pode alterar o título do prompt de
title
comando usando o comandoVocê pode criar um arquivo em lotes (por exemplo, mycd.bat) contendo:
e use-o em vez de "cd":
Você também pode colocar o arquivo .bat no system32, se desejar que ele esteja sempre disponível.
fonte
doskey cd=cd $* ^&^& title $*
Você não pode, pelo menos não com o shell do Windows.
Ele pode ser possível adicionar "set título Xterm" sequências de escape para
%PROMPT%
, mas você precisaria de um emulador diferente terminal (talvez PuTTYcyg ou algo do SFU), como Console do Windows não suporta sequê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 freqüentemente confundidos em contextos do Windows, então ...
shell lê e interpreta a entrada;
cmd.exe
,command.com
,/bin/sh
terminal , emulador de terminal , console exibe programas baseados em texto (incluindo o shell) na tela;
Windows Console
,xterm
,PuTTYcyg
fonte
explorer
é um shell de GUI,cmd.exe
é um baseado em texto. (Pense nisso:cmd.exe
é o equivalente exato de/bin/sh
em Unix, e/bin/sh
é sempre chamado de "shell" Da mesma forma, o console do Windows é equivalente a um "emulador de terminal" no X11..)Supondo que \ tools está no caminho e é onde você mantém seus arquivos em lote:
Agora você tem um
cdtitle.bat
que pode chamar de outro arquivo em lotes.fonte
Crie um arquivo: cd.bat e coloque o seguinte:
Em seguida, emita este comando:
Substitua "..." pelo caminho para cd.bat. Experimente e veja se funciona.
Para tornar esse ish permanente, crie o dosrc.cmd, insira o comando doskey e crie um atalho de cmd, clique com o botão direito do mouse e selecione propriedades.
Modifique o destino para:
Mais uma vez, substitua "..." pelo caminho para dosrc.cmd
Em seguida, clique duas vezes no atalho, você deve ter a funcionalidade do CD.
fonte