วิธีที่ง่ายและสะดวกในการสร้างลิงค์สัญลักษณ์บน Windows?


33

ฉันต้องการบางสิ่งที่สนับสนุนอย่างน้อยใน Windows XP และไม่ต้องการการดาวน์โหลดจากผู้ใช้ใหม่หวังว่า



คำตอบ:


108

คุณเคยดูจังก์ชั่นไหม?

นอกจากนี้ Windows Vista ยังแนะนำเครื่องมือบรรทัดคำสั่งmklinkเพื่อสร้างลิงก์สัญลักษณ์

MKLINK [[/D] | [/H] | [/J]] Link Target
    /D      Creates a directory symbolic link.  Default is a file
            symbolic link.
    /H      Creates a hard link instead of a symbolic link.
    /J      Creates a Directory Junction.
    Link    specifies the new symbolic link name.
    Target  specifies the path (relative or absolute) that the new link refers to.

Scott Hanselman มีบทความเขียนไว้ที่ http://www.hanselman.com/blog/MoreOnVistaReparsePoints.aspx

หากคุณกำลังพูดถึง Windows XP เพียงอย่างเดียวฉันเคยใช้เครื่องมือ Junction เท่านั้น


4
ดูเหมือนว่าตัวเลือกอื่นอาจเป็นสวิตช์ / J บน mklink (เช่น "mklink / J <JUNCTION> <DIR>") โปรดทราบว่ามันไม่ได้แยกต่างหากปฏิบัติการมันเป็นคำสั่งใน cmd ดังนั้นถ้าคุณโทรจาก PowerShell คุณจะต้องเปลือกออกไปยัง cmd (เช่น "cmd / c mklink / J <JUNCTION> <DIR>" )
David Mohundro

ชุมทางว้าวใช้งานได้ดี มันสร้างลิงก์สัญลักษณ์ที่แท้จริงดังนั้นแม้ Cygwin จะติดตามมัน
สไตล์

3
mklinkเป็นสิ่งที่ฉันกำลังมองหา
prolink007

2
ทำไมโอ้ทำไมพวกเขากลับคำสั่งของการขัดแย้งจากlnคำสั่งUNIX อายุ?
kbolino

1
@kbolino: ง่าย! เพราะพวกเขาเพียงแค่คาดหวังว่าโลกโอเพนซอร์ซจะ "ติดตาม" กับพวกเขา ... อืม
tniles

22

มีเครื่องมือที่เรียกว่าLink Shell Extensionซึ่งทำให้ง่ายต่อการสร้าง symlink ไปยังไฟล์รวมถึงลิงค์ประเภทเก่าที่เรียกว่า "จังก์ชัน" (โดยทั่วไปคือ symlink ไปยังโฟลเดอร์) รวมถึงลิงค์แปลก ๆ อีกมากมาย

ป้อนคำอธิบายรูปภาพที่นี่

การใช้งานขั้นพื้นฐานนั้นง่าย: นำทางไปยังโฟลเดอร์ต้นทางคลิกขวาที่ไฟล์หรือโฟลเดอร์ที่คุณต้องการเชื่อมโยงและเลือกตัวเลือก "เลือกลิงค์แหล่งที่มา" จากเมนูบริบท จากนั้นไปที่โฟลเดอร์ที่คุณต้องการวางลิงค์คลิกขวาแล้วเลือก "Drop As" จากนั้นเลือก "Symbolic Link" สำหรับไฟล์หรือ "Junction" สำหรับโฟลเดอร์

แต่

ระวัง: เหตุผลหนึ่งที่ Microsoft ทำให้การทำเช่นนี้ยากคือ junctions และ symlink นั้นง่ายต่อการลบไฟล์สำคัญโดยไม่ตั้งใจ!

ในบางรุ่นก่อนหน้า Windows 7 การลบจุดเชื่อมต่อหรือ symlink ใน Explorer จะลบไดเรกทอรีต้นฉบับโดยอัตโนมัติเช่นกัน!

ฉันเชื่อว่าปัญหานี้ได้รับการแก้ไขแล้ว ... แต่แน่นอนว่าฉันไม่ได้สัญญา ... ระมัดระวังเป็นพิเศษกับเบราว์เซอร์ไฟล์ของบุคคลที่สาม (ถ้าคุณต้องการ symlink ฉันมั่นใจว่าคุณเจ็บปวดอย่างยิ่ง รับทราบว่า Windows 7 Explorer ทำงานหนักเพียงใด)

แต่ฉันเชือนแช ประเด็นของฉันคือ: ระวังทำการบ้านของคุณและอ่านเอกสาร LSE เพื่อดูว่า junctions และ symlink ทำงานอย่างไรและเพื่อประโยชน์ของการกลับมาทุกอย่างก่อนที่คุณจะเริ่มยุ่งกับ junctions และ symlink!


9

ไดเรกทอรีที่อ้างอิงควรทำงานราวกับว่ามันถูกเพิ่มไปยัง% PATH% แล้วใช่ไหม

ไม่ถ้าคุณเพิ่ม C: \ bin ไปยัง% PATH% ของคุณและภายใน c: \ bin คุณได้สร้าง Junction ชื่อ c: \ bin \ anotherDir \ เพื่อชี้ไปที่ c: \ anotherDir \ เพื่อให้คุณสามารถเรียกใช้ some.exe จาก บรรทัดคำสั่งเช่น:

> anotherDir\some.exe

สิ่งนี้จะไม่ทำงานเนื่องจากตัวแปร% PATH% ใช้งานไม่ได้กับไดเรกทอรีย่อย (เชื่อมโยงหรือไม่)

คุณจะต้องสร้างฮาร์ดลิงก์ไปยัง some.exe โดยตรงดังนั้นฮาร์ดลิงก์ c: \ bin \ some.exe จะชี้ไปที่ c: \ anotherDir \ some.exe

ดังนั้นโดยสรุปฉันไม่เชื่อว่าคุณสามารถทำสิ่งที่คุณขอได้ ที่กล่าวว่าฉันขอแนะนำLink Shell Extensionสำหรับการสร้างทางแยกและฮาร์ดลิงก์ มันมีความสามารถมากกว่าเครื่องมือเชื่อมต่อในส่วนขยาย windows explorer ที่ใช้งานง่ายมาก


7

ลองใช้ Symlinker เป็นเครื่องมือ GUI เพื่อสร้าง Symlink ใน Windows

แอปพลิเคชั่นนี้ต้องใช้. Net Framework 3.5 เพื่อให้ทำงานได้ (แนะนำให้ใช้ SP1) และตั้งแต่วันที่ 4/24/2015 ซอฟต์แวร์นี้จะทำงานภายใต้เท่านั้น

  • Windows Vista
  • วินโดว 7
  • Windows 8 และ 8.1

Symlinker UI


มันสามารถสร้าง symlink บน Windows XP ได้หรือไม่?
เซบาสเตียน Godelet

7

คำสั่ง Windows Vista, 7 และ 8 โดยธรรมชาติ:

  1. ลิงก์สัญลักษณ์ไฟล์ (ค่าเริ่มต้น):
    • mklink <oldpath> <newpath>
  2. ลิงก์สัญลักษณ์ของไดเรกทอรี :
    • mklink /D <oldpath> <newpath>

ข้อเสนอนี้ถูกเสนอเป็นคำตอบเมื่อ 7 ปีที่แล้ว
Josh

3
นี้ไม่ถูกต้อง: Windows XP ไม่ได้กำเนิดมีmklinkคำสั่ง
patricktokeeffe

Vista เป็นรุ่นแรกของ Windows ที่จะรวมmklinkต่อtechnet.microsoft.com/en-us/library/cc753194(v=ws.11).aspx
ฉันพูดว่า Reinstate Monica

4

ฉันไม่คิดว่ารุ่นของ NTFS ที่มาพร้อมกับ XP รองรับลิงก์สัญลักษณ์ NTFS6 ซึ่งจัดส่งใน Vista และ Windows 7 รองรับการเชื่อมโยงสัญลักษณ์ด้วยmklinkคำสั่ง รุ่น XP ของ NTFS ไม่ hardlinks สนับสนุน แต่เหล่านี้ไม่สามารถขยายปริมาณ


2

Junction เป็นยูทิลิตี้ที่ยอดเยี่ยม แต่สิ่งหนึ่งที่ต้องระวังคือจุดเชื่อมต่อมีลักษณะเหมือนกับโฟลเดอร์ทั่วไปใน Windows Explorer

ใช้ 'junction.exe -s' บนบรรทัดคำสั่งเพื่อแสดงรายการแยกทั้งหมดในโฟลเดอร์และโฟลเดอร์ย่อย


2

สร้าง symlink ในFar ผู้จัดการ : Alt+ หรือF6F7


ต่อไปนี้เป็นข้อมูลเชิงลึกเกี่ยวกับประเภทของลิงก์ใน Windows (ฮาร์ดลิงก์จุดเชื่อมต่อและลิงก์สัญลักษณ์):

https://translate.google.com/translate?hl=&sl=ru&tl=en&u=https%3A%2F%2Fgeektimes.ru%2Fpost%2F50878%2F

มันแสดงรายการเครื่องมืออื่น ๆ เพื่อสร้างลิงค์




โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.