Làm thế nào để bạn tạo một liên kết tượng trưng với một đường dẫn tương đối bằng mklink?


24

Trang web này ngụ ý rằng có thể tạo các liên kết tượng trưng với các đường dẫn tương đối bằng cách sử dụng mklink.

Tôi đã thử tất cả các cách để tạo liên kết tượng trưng tương đối, nhưng tôi luôn kết thúc với một con đường tuyệt đối.

Làm thế nào được thực hiện?


MSDN có một cách kỳ lạ để giải thích điều này. Tôi đã có một thời gian khó hiểu làm thế nào để tạo một liên kết tượng trưng, ​​vì không có ví dụ thực tế.
iglvzx

Lý do duy nhất tôi biết "cách lạ" này là vì MSDOS sử dụng phương pháp này.
Surfasb

Tôi không hiểu tại sao câu hỏi của tôi hiện có 20.000 lượt xem, khi sự cố xảy ra do lỗi trong TCC / LE. Các liên kết tượng trưng được làm tương đối theo mặc định thường.
paradroid

Câu trả lời:


36

Liên kết tượng trưng là tương đối theo mặc định. Bạn phải viết rõ ràng một ký tự ổ đĩa để làm cho bất kỳ phần nào của liên kết tuyệt đối.

Cú pháp chung cho một liên kết tượng trưng là:

mklink link destination

Vì vậy, để tạo một liên kết tượng trưng tương đối: linksẽ là một đường dẫn liên quan đến thư mục làm việc của bạn và destinationsẽ là một đường dẫn tương đối link.

Ví dụ:

1. mklink link.txt ..\destination.txt

Điều này tạo ra một liên kết tượng trưng cho link.txtchỉ destination.txtmột thư mục lên.

Bạn có thể di chuyển link.txtxung quanh và nó sẽ luôn trỏ đến destination.txtmột thư mục.

2. C:\>mklink A\Link.txt ..\Destination.txt

Điều này tạo ra một liên kết tượng trưng C:\A\Link.txtchoC:\Destination.txt


Đây là nó. Thay vì bắt đầu bằng một ký tự ổ đĩa hoặc dấu gạch chéo ngược, bạn chỉ cần bắt đầu với một thư mục. ví dụ: mklink destination.txt "documentation\readme.txt"sẽ trỏ đến một thư mục con có tên là documetation "và một tệp trong thư mục đó có tên là * readme.txt .
Surfasb

@surfasb, @iglvzx: Lúc đầu tôi rất bối rối, vì đó chính xác là những gì tôi đã cố gắng. Nhưng khi cả hai bạn xác nhận rằng điều này hoạt động, tôi đã nhận ra rằng nó hoạt động CMD, nhưng không phải TCC/LE, đó là những gì tôi đã và đang sử dụng. Tôi ngạc nhiên rằng nó đang thay đổi (mở rộng) đối số đường dẫn cho các chương trình bên ngoài.
paradroid

@surfasb: Sự cố này với TCC / LE đã được khắc phục với v13 mới, nhưng đã xảy ra với 12.11.76, mà tôi đã sử dụng.
paradroid

2
@paradroid: Tôi rất vui vì nó hoạt động được. Tôi nhớ rất thích phiên bản cũ của TCC. Bạn dùng nó bao lâu rồi Mặt khác, không, vâng, sắc thái của bảng liệt kê PATH làm tôi suy nghĩ. Và bắt buộc [bài đăng trên blog] :( blog.msdn.com/b/oldnewthing/archive/2005/11/22/495740.aspx ) về việc các quyết định MS-DOS trước đây đối với khả năng tương thích vẫn ảnh hưởng đến chúng ta ngày nay.
Surfasb
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.