W systemie Linux możemy przejść do strony domowej użytkownika, wprowadzając ~
znak tylda ( ) po cd
:
cd ~
Jak zrobić to samo w systemie Windows?
Za każdym razem muszę wpisać:
cd C:\Document and Settings\freewind
To zbyt nudne.
W systemie Linux możemy przejść do strony domowej użytkownika, wprowadzając ~
znak tylda ( ) po cd
:
cd ~
Jak zrobić to samo w systemie Windows?
Za każdym razem muszę wpisać:
cd C:\Document and Settings\freewind
To zbyt nudne.
Odpowiedzi:
cd /d "%HOMEDRIVE%%HOMEPATH%"
zrobiłbym to - ale nie jestem pewien, czy uważasz to za poprawę.
Możesz także zdefiniować alias dla powyższego polecenia:
doskey cdhome=cd /d "%HOMEDRIVE%%HOMEPATH%"
Po tym to po prostu cdhome
.
~
.
Możesz użyć, cd /d %USERPROFILE%
jeśli używasz cmd.
lub możesz użyć, cd ~
jeśli używasz PowerShell.
c:\documents and settings\...
, spacje będą ją łamać, chyba że będzie cytowane)
cd
jest wyjątkiem. Ponieważ zawsze wymaga jednego argumentu, cytowanie nie jest konieczne. (W systemie Windows programy i wbudowane narzędzia muszą sami parsować swoje linie poleceń, powłoka tego nie robi.) Jednak dobrą praktyką jest zawsze cytowanie ścieżek .
cmd.exe
sam i jego zwariowane /c
.
/c "C:\foo bar\baz" "my file.txt"
czy /c "\"C:\foo bar\baz\" \"my file.txt\""
czy /c ""C:\foo bar\baz" "my file.txt""
? Co gorsza, parsowanie zależy od tego, czy /s
zostało określone wcześniej, od obecności znaków specjalnych, od tego, czy plik wykonywalny ma nazwę, C:\foo bar\baz
czy po prostu C:\foo
...
Jedną z możliwości jest użycie subst
polecenia z wiersza polecenia:
subst z: C:\Document and Settings\freewind
Za każdym razem, gdy przejdziesz do dysku Z :, będziesz patrzył na folder użytkownika.
Minusem jest to, że musisz go uruchamiać przy każdym logowaniu. Użyłem pliku wsadowego i po prostu umieściłem go w folderze startowym, ale są prawdopodobnie bardziej eleganckie rozwiązania tego problemu.
Zaletą jest to, że w przeciwieństwie do aliasu doskey, działa on uniwersalnie (Eksplorator Windows, okno dialogowe przeglądania itp.), Nie tylko podczas zmiany katalogów w wierszu polecenia. Jest to szczególnie przydatne w przypadku starych programów ze starymi oknami dialogowymi przeglądania, które mają litery dysków na najwyższym poziomie, a nie „na pulpicie”.
Możesz utworzyć plik wsadowy o nazwie ~.bat
zawierający
@echo off
cd /d %USERPROFILE%
I dodaj go do zmiennej PATH (Start -> [kliknij prawym przyciskiem myszy „Komputer”] -> Właściwości -> „Zaawansowane ustawienia systemu” [w lewej kolumnie] -> „Zmienne środowiskowe”
Następnie edytuj zmienną PATH, aby uwzględnić folder zawierający ~.bat
plik. (Pozwala to na wywołanie skryptu z dowolnego miejsca przy użyciu samej nazwy pliku - nie bezwzględnej ścieżki do pliku)
Upewnij się także, że twoja PATHEXT
zmienna środowiskowa .BAT
gdzieś zawiera (pozwala to pisać ~
zamiast ~.bat
).
Gdy musisz go użyć, po prostu wpisz ~
w wierszu polecenia. To rozwiązanie jest trwałe - nie musisz go konfigurować za każdym razem, gdy uruchamiasz powłokę i nie musisz hakować rejestru.
Niestety nie znam idealnego rozwiązania, ale istnieje kilka hackujących opcji:
Opcja 1: Ustaw ~ jako alias polecenia z doskey
doskey ~=cd /d %USERPROFILE%
Umożliwi to po prostu wpisanie ~
i wprowadzenie go do katalogu domowego.
C:\>~
C:\Users\a>
Oczywiście skraca to liczbę naciśnięć klawiszy, aby wrócić do domu (nawet w porównaniu z Linuksem), ale jest mniej niezawodne, ponieważ nie można tak naprawdę użyć go jako części innej ścieżki lub zrobić z nim wiele poza zwykłym cd'ingiem do domu.
Opcja 2: Ustaw ~, aby była zmienną
Inną opcją, jeśli chcesz bardziej niezawodną opcję, jest ustawienie var:
set ~="%USERPROFILE%"
ale użycie tego byłoby takie jak:
E:\>cd /d %~%
C:\Users\a>
Można go również wstrzykiwać w większość ścieżek i nie ogranicza cię do zwykłego nagrywania płyt CD w domu.
Obie opcje jednocześnie
Możesz także wdrożyć obie metody jednocześnie. Jeśli masz wokół niego%, to użyje zmiennej - w przeciwnym razie będzie traktowane ~
jak polecenie.
C:\>:: ECHO (display) THE VALUE OF %~%
C:\>echo %~%
C:\Users\a
C:\>:: ChDir to ~\DESKTOP
C:\>cd /d %~%\Desktop
C:\Users\a\Desktop>:: USE THE ~ COMMAND
C:\Users\a\Desktop>~
C:\Users\a>
Jeszcze jedna wskazówka (trochę związana):
Jest to mniej prawdopodobne, że jest to do zaakceptowania na komputerze korporacyjnym, przynajmniej na komputerze domowym, w celu zaoszczędzenia dodatkowych naciśnięć klawiszy, nie jest złym pomysłem, aby twój %USERPROFILE%
katalog był prostą nazwą. Jak widać z powyższych przykładów, moim C:\Users\a
katalogiem użytkownika jest - zawsze miałem „aplocher” lub „adamp”, a kiedy zmieniłem na jedną literę, było to magiczne.
Korzystając z programu PowerShell, możesz wypróbować następującą metodę nawigacji po katalogach z dowolnego miejsca, pod warunkiem, że znasz swoją nazwę użytkownika i masz uprawnienia do katalogu plików.
cd \..\Users\yourUserName\Documents
cd \..\Users\yourUserName\Downloads
cd \..\Users\yourUserName\Desktop
cd \..\Users\yourUserName\music
Zobacz przykład poniżej w PowerShell (64-bitowy). Przetestowałem to na 64-bitowym pudełku systemu Windows 7 Pro.