Trong Linux, chúng ta có thể đến nhà người dùng bằng cách nhập ~
ký tự dấu ngã ( ) sau cd
:
cd ~
Làm thế nào để làm điều tương tự trong Windows?
Mỗi lần, tôi cần gõ:
cd C:\Document and Settings\freewind
Điều đó quá nhàm chán.
Trong Linux, chúng ta có thể đến nhà người dùng bằng cách nhập ~
ký tự dấu ngã ( ) sau cd
:
cd ~
Làm thế nào để làm điều tương tự trong Windows?
Mỗi lần, tôi cần gõ:
cd C:\Document and Settings\freewind
Điều đó quá nhàm chán.
Câu trả lời:
cd /d "%HOMEDRIVE%%HOMEPATH%"
sẽ làm điều đó - nhưng tôi không chắc nếu bạn coi đó là một cải tiến.
Bạn cũng có thể định nghĩa bí danh cho lệnh trên:
doskey cdhome=cd /d "%HOMEDRIVE%%HOMEPATH%"
Sau này, nó đơn giản cdhome
.
~
.
Bạn có thể sử dụng cd /d %USERPROFILE%
nếu bạn sử dụng cmd.
hoặc bạn có thể sử dụng cd ~
nếu bạn sử dụng PowerShell.
c:\documents and settings\...
, khoảng trắng sẽ phá vỡ nó trừ khi được trích dẫn)
cd
là một ngoại lệ. Vì nó luôn luôn có một đối số duy nhất, nên trích dẫn là không cần thiết. (Trên Windows, các chương trình và phần mềm dựng sẵn phải tự phân tích dòng lệnh của chúng, trình bao không làm điều đó.) Tuy nhiên, luôn luôn trích dẫn các đường dẫn là một cách thực hành tốt.
cmd.exe
chính nó và lập dị của nó /c
.
/c "C:\foo bar\baz" "my file.txt"
hay /c "\"C:\foo bar\baz\" \"my file.txt\""
hay /c ""C:\foo bar\baz" "my file.txt""
? Điều tồi tệ hơn nữa là việc phân tích cú pháp phụ thuộc vào việc /s
được chỉ định trước đó, sự hiện diện của các ký tự đặc biệt, cho dù thực thi được đặt tên C:\foo bar\baz
hay chỉ C:\foo
...
Một khả năng là sử dụng subst
lệnh từ dấu nhắc lệnh:
subst z: C:\Document and Settings\freewind
Bất cứ khi nào bạn điều hướng đến ổ Z:, bạn sẽ xem thư mục người dùng của mình.
Nhược điểm là bạn cần chạy nó mỗi khi đăng nhập. Tôi đã sử dụng một tệp bó và chỉ cần đặt nó vào thư mục khởi động của mình, nhưng có lẽ có nhiều giải pháp thanh lịch hơn cho việc này.
Lợi ích là không giống như bí danh doskey, nó hoạt động phổ biến (windows explorer, hộp thoại duyệt, v.v.), không chỉ khi thay đổi thư mục tại dấu nhắc lệnh. Nó đặc biệt hữu ích cho các chương trình cũ với hộp thoại duyệt cũ có ký tự ổ đĩa ở cấp cao nhất, thay vì "máy tính để bàn".
Bạn có thể tạo một tệp bó ~.bat
có tên là chứa
@echo off
cd /d %USERPROFILE%
Và thêm nó vào biến PATH của bạn (Bắt đầu -> [nhấp chuột phải vào "Máy tính"] -> Thuộc tính -> "Cài đặt hệ thống nâng cao" [ở cột bên trái] -> "Biến môi trường"
Từ đó, chỉ cần chỉnh sửa biến PATH của bạn để bao gồm thư mục chứa ~.bat
tệp của bạn . (Điều này cho phép bạn gọi tập lệnh của mình từ bất kỳ đâu chỉ bằng tên tệp - không phải là đường dẫn tuyệt đối đến tệp)
Ngoài ra, hãy đảm bảo PATHEXT
biến môi trường của bạn chứa .BAT
ở đâu đó (điều này cho phép bạn nhập ~
thay vì ~.bat
).
Khi bạn cần sử dụng nó, chỉ cần nhập ~
tại dấu nhắc lệnh. Giải pháp này rất bền bỉ - bạn sẽ không phải thiết lập nó mỗi khi bạn khởi chạy shell và bạn sẽ không cần phải hack registry của mình.
Thật không may, tôi không biết về một giải pháp hoàn hảo nhưng có một vài lựa chọn khó khăn:
Tùy chọn 1: Đặt ~ thành bí danh lệnh với doskey
doskey ~=cd /d %USERPROFILE%
Điều này sẽ cho phép bạn chỉ cần gõ ~
và có nó chdir cho homedir của bạn.
C:\>~
C:\Users\a>
Rõ ràng, điều này rút ngắn số lượng tổ hợp phím để về nhà (thậm chí so với Linux), nhưng kém mạnh mẽ hơn vì bạn không thể thực sự sử dụng nó như một phần của một con đường khác hoặc làm nhiều việc với nó ngoài việc chỉ về nhà.
Tùy chọn 2: Đặt ~ là biến
Một tùy chọn khác, nếu bạn muốn một tùy chọn mạnh mẽ hơn là đặt var:
set ~="%USERPROFILE%"
nhưng sử dụng điều này sẽ được sử dụng như:
E:\>cd /d %~%
C:\Users\a>
Nó cũng có thể được đưa vào hầu hết các đường dẫn và không giới hạn bạn chỉ đơn giản là về nhà.
Cả hai tùy chọn cùng một lúc
Ngoài ra, bạn có thể thực hiện đồng thời cả hai phương pháp. Nếu bạn có% của nó xung quanh nó, thì nó sẽ sử dụng biến - nếu không nó sẽ coi ~
như một lệnh.
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>
Một mẹo khác (liên quan đến kinda):
Điều này ít có khả năng được chấp nhận trên máy công ty, ít nhất là trên PC tại nhà của bạn, để lưu các tổ hợp phím bổ sung, đó không phải là ý tưởng tồi để biến %USERPROFILE%
thư mục của bạn thành một tên đơn giản. Như bạn có thể thấy từ các ví dụ của tôi ở trên, thư mục người dùng của tôi là C:\Users\a
- Tôi đã luôn luôn có 'aplocher' hoặc 'adamp' và khi tôi đổi thành một chữ cái duy nhất, điều đó thật kỳ diệu.
Sử dụng PowerShell, bạn có thể thử phương pháp sau để điều hướng các thư mục từ bất kỳ nơi nào miễn là bạn biết tên người dùng của mình và được cấp quyền thư mục tệp.
cd \..\Users\yourUserName\Documents
cd \..\Users\yourUserName\Downloads
cd \..\Users\yourUserName\Desktop
cd \..\Users\yourUserName\music
Xem ví dụ dưới đây trong PowerShell (64 bit). Tôi đã thử nghiệm điều này trên hộp Windows 7 Pro 64 bit.