web-dev-qa-db-ja.com

WindowsでCMDのタイトルを現在の作業ディレクトリに設定する方法XP

Windowsのコマンドプロンプト(CMD)のタイトルをどのように動的に設定するかXP現在の作業ディレクトリに動的に設定しますか?

title %CD%

ただし、これは一時的な修正であり、CDコマンドを使用してディレクトリを変更してもタイトルは修正されたままです。

19
Stormshadow

重力のdoskeyマクロのおかげでうまくいきました。彼は&&を使用して、完全に機能するcdコマンドとtitleコマンドを組み合わせました。レジストリを調整することで、cmdを使用するたびにこのマクロをロードしました。

1)cmd_title.batというbatファイルを作成しましたが、その内容は

@echo off
title %cd%

2)このファイルをC:ドライブ(C:\ cmd_title.bat)に配置しました

3)C:ドライブにcmd.batという名前の別のバッチファイルを次の内容で作成します

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

(/ dフラグは、cdを使用して別のドライブに切り替えるためのものです)。

4)次に、regeditを開いてHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processorに移動します。ここにAutoRunというキーがあります。このキーの値を変更して、引用符で囲んだcmd.batファイルの場所に設定します(例: "C:\ cmd.bat")。

これで、cmdを開くたびにcdが動作します。

基本的に&&はWindowsのコマンドチェーンに使用されます

21
Stormshadow

Pushdとpopdの方がcdよりもはるかに便利で、入力が速いとはるかに役立つと思います。 cdとpushd/popd、およびコンソールウィンドウのディレクトリタイトルの問題を、パスにあるd.batと呼ぶ次のスクリプトで解決しました。

@ 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%
6
David McCracken

titleコマンドを使用して、コマンドプロンプトのタイトルを変更できます。

以下を含むバッチファイル(mycd.batなど)を作成できます。

title "%1"
cd  "%1"

そして "cd"の代わりにそれを使ってください:

mycd "newdir"

.batファイルを常に使用できるようにする場合は、system32に配置することもできます。

2
harrymc

\ toolsがパスにあり、バッチファイルを保持する場所であると仮定します。

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

cdtitle.bat別のバッチファイルから呼び出すことができます。

1
daveand

ファイルcd.batを作成し、そこに以下を配置します。

cd %*  
title %CD%  

次に、次のコマンドを発行します。

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

「...」をcd.batへのパスに置き換えます。試してみて、動作することを確認してください。

永続的なものにするには、dosrc.cmdを作成し、そのdoskeyコマンドをそこに配置してから、cmdショートカットを作成し、右クリックしてプロパティを選択します。

ターゲットを次のように変更します。

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

ここでも、「...」をdosrc.cmdへのパスに置き換えます。

次に、ショートカットをダブルクリックします。CD機能が必要です。

1
Mauro

少なくともWindowsシェルではできません。


可能性があります「set Xterm title」エスケープシーケンスを%Prompt%に追加できますが、Windowsコンソールではサポートされていないため、別のターミナルエミュレータ(おそらくPuTTYcygまたはSfUの何か)が必要になります。エスケープシーケンス。

または、Windowsコンソール機能を使用してタイトルを設定できる別のシェルを見つけます。


これらはWindowsのコンテキストではしばしば混乱するので...

Shell入力を読み取って解釈します。 cmd.execommand.com/bin/sh

端末端末エミュレータコンソールは、画面にテキストベースのプログラム(シェルを含む)を表示します。 Windows ConsolextermPuTTYcyg

1
user1686