W jaki sposób dynamicznie ustawia się tytuł wiersza polecenia (CMD) w systemie Windows XP do bieżącego katalogu roboczego? mogę użyć
title %CD%
jest to jednak poprawka tymczasowa, a tytuł pozostaje stały, gdy zmieniam katalog za pomocą polecenia CD.
windows
windows-xp
command-line
Stormshadow
źródło
źródło
pushd
jednego z makr?Odpowiedzi:
Sprawił, że zadziałało dzięki makro doskey grawitacji. Użył && do połączenia poleceń cd i tytułu, co działa idealnie. Nawet ładowałem to makro za każdym razem, gdy używam cmd, modyfikując rejestr.
1) Utworzyłem plik nietoperza o nazwie cmd_title.bat i jego zawartość to
2) Umieściłem ten plik na dysku C: (C: \ cmd_title.bat)
3) Utwórz inny plik wsadowy o nazwie cmd.bat na dysku C: o następującej zawartości
(flaga / d służy do przełączania na inny dysk za pomocą cd).
4) Następnie otwieramy regedit i przechodzimy do HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Command Processor . Tutaj jest klucz o nazwie AutoRun . Zmieniamy wartość tego klucza i ustawiamy go w lokalizacji pliku cmd.bat w cudzysłowach (np .: „C: \ cmd.bat”).
Teraz cd działa tak, jak chcemy za każdym razem, gdy otwieramy cmd.
Zasadniczo && służy do łączenia poleceń w systemie Windows
źródło
doskey cd=@echo off$Tcd /d $*$T@title ^%cd^%$Techo on
@echo off
nie jest konieczne, jeśli dodajesz@
przed poleceniami, których echo nie chcesz. Uznałem również, że to polecenie jest bardziej przydatne, aby ustawić tytuł tylko bieżącą nazwę katalogu zamiast pełnej ścieżki@for %%* in (.) do @title %%~nx*
Myślę, że pushd i popd są znacznie bardziej użyteczne niż cd, i przydałoby się o wiele więcej, gdyby szybciej pisały. Rozwiązałem problemy z cd vs. pushd / popd i tytułem katalogu okna konsoli za pomocą następującego skryptu, który nazywam d.bat, który jest na mojej ścieżce.
źródło
Możesz zmienić tytuł wiersza polecenia, używając
title
polecenia.Możesz utworzyć plik wsadowy (powiedzmy mycd.bat) zawierający:
i użyj go zamiast „cd”:
Możesz także umieścić plik .bat w systemie32, jeśli chcesz, aby zawsze był dostępny.
źródło
doskey cd=cd $* ^&^& title $*
Nie możesz, przynajmniej nie przy użyciu powłoki Windows.
Możliwe, że można dodać sekwencje specjalne „ustaw tytuł Xterm”
%PROMPT%
, ale potrzebny byłby inny emulator terminala (być może PuTTYcyg lub coś z SfU), ponieważ Windows Console nie obsługuje sekwencji specjalnych.Możesz też znaleźć inną powłokę, która może używać funkcji konsoli Windows do ustawiania tytułów.
Często są one mylone w kontekście Windows, więc ...
powłoka odczytuje i interpretuje dane wejściowe;
cmd.exe
,command.com
,/bin/sh
terminal , emulator terminala , konsola wyświetla na ekranie programy tekstowe (w tym powłokę);
Windows Console
,xterm
,PuTTYcyg
źródło
explorer
jest powłoką GUI,cmd.exe
jest tekstową. (Pomyśl o tym:cmd.exe
jest dokładnym odpowiednikiem/bin/sh
w Uniksie i/bin/sh
zawsze jest nazywany „powłoką”. Podobnie, konsola Windows jest odpowiednikiem „emulatora terminala” w X11.)Zakładając, że \ tools znajduje się na ścieżce i tam przechowujesz pliki wsadowe:
Masz teraz plik
cdtitle.bat
, który możesz wywołać z innego pliku wsadowego.źródło
Utwórz plik: cd.bat i umieść tam następujące elementy:
Następnie wydaj polecenie:
Zamień „...” na ścieżkę do cd.bat. Wypróbuj i przekonaj się, że to działa.
Aby ustawić tę trwałość, utwórz dosrc.cmd, umieść tam polecenie doskey, a następnie utwórz skrót cmd, kliknij go prawym przyciskiem myszy i wybierz właściwości.
Zmodyfikuj cel, aby był:
Ponownie zamień „...” na ścieżkę do dosrc.cmd
Następnie kliknij dwukrotnie skrót, powinieneś mieć funkcję cd.
źródło