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
@echo off
title %cd%
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
doskey cd = cd /d $* ^&^& "C:\cmd_title.bat"
title %cd%
(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
Możliwe, że zaburzyłeś wartości CompletionChar / PathCompletionChar w kluczu HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Command Processor w rejestrze. Aby ustawić użycie klawisza tab do automatycznego uzupełniania, musisz ustawić wartości CompletionChar i PathCompletionChar na 0x9 (hex)
Uważam, że @echo offnie 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.
@ 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%
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
@Idigas: explorerjest powłoką GUI, cmd.exejest tekstową. (Pomyśl o tym: cmd.exejest dokładnym odpowiednikiem /bin/shw Uniksie i /bin/shzawsze jest nazywany „powłoką”. Podobnie, konsola Windows jest odpowiednikiem „emulatora terminala” w X11.)
Utwórz plik: cd.bat i umieść tam następujące elementy:
cd %*
title %CD%
Następnie wydaj polecenie:
doskey cd=...\cd.bat $*
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ł:
%windir%\system32\cmd.exe /K ...\dosrc.cmd
Ponownie zamień „...” na ścieżkę do dosrc.cmd
Następnie kliknij dwukrotnie skrót, powinieneś mieć funkcję cd.
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.
pushd
jednego z makr?