อ่าน 3 นาที
ln (Unix)
ln เป็น คำสั่ง เชลล์ สำหรับสร้างลิงก์ไปยังไฟล์หรือไดเร็กทอรีที่มีอยู่[ 1 ] โดย ค่า เริ่ม ต้น คำสั่งนี้จะสร้าง ฮาร์ดลิงก์ แต่หากใช้ ตัวเลือก บรรทัดคำสั่ง จะสร้างลิงก์ สัญลักษณ์ [ 2...
ln (Unix)
| ln | |
|---|---|
ตัวอย่างการใช้งาน lnยูทิลิตี้ | |
| ผู้เขียนต้นฉบับ | เอทีแอนด์ที เบลล์ แล็บโบราทอรีส์ |
| นักพัฒนา | นักพัฒนาซอฟต์แวร์โอเพนซอร์สและเชิงพาณิชย์หลายราย |
| ปล่อย | 3 พฤศจิกายน 2514 |
| ระบบปฏิบัติการ | ยูนิก , ระบบคล้ายยูนิก , ไอบีเอ็ม ไอ |
| แพลตฟอร์ม | ข้ามแพลตฟอร์ม |
| พิมพ์ | สั่งการ |
| ใบอนุญาต | coreutils : GPLv3+ |
lnเป็นคำสั่งเชลล์ สำหรับสร้างลิงก์ไปยังไฟล์หรือไดเร็กทอรีที่มีอยู่[ 1 ] โดยค่าเริ่มต้นคำสั่งนี้จะสร้างฮาร์ดลิงก์แต่หากใช้ ตัวเลือก บรรทัดคำสั่งจะสร้างลิงก์สัญลักษณ์[ 2 ]ระบบส่วนใหญ่ไม่อนุญาตให้สร้างฮาร์ดลิงก์ไปยังไดเร็กทอรี เนื่องจากลิงก์ดังกล่าวอาจรบกวนโครงสร้างของระบบไฟล์และขัดขวางการทำงานของยูทิลิตี้อื่นๆ[ 3 ]คำสั่งนี้สามารถสร้างลิงก์สัญลักษณ์ไปยังไฟล์ที่ไม่มีอยู่จริงได้[ 4 ]-s
คำสั่งนี้ปรากฏในฉบับที่ 2 ของแนวทางปฏิบัติในการพกพาX/Open [ 5 ]เวอร์ชันในGNU Core Utilitiesเขียนโดย Mike Parker และ David MacKenzie [ 6 ] คำสั่งนี้มีให้ใช้งานในWindowsผ่านUnxUtils [ 7 ]และได้รับการพอร์ตไปยังIBM i [ 8 ]
ลิงก์
ลิงก์ช่วยให้เส้นทางมากกว่าหนึ่งเส้นทางสามารถอ้างอิงถึงไฟล์เดียวกันได้
ฮาร์ดลิงก์คือรายการในไดเร็กทอรีที่อ้างอิงถึงinode ของไฟล์ ( การอ้างอิง ภายใน ) ไฟล์หนึ่งสามารถมีฮาร์ดลิงก์ได้หลายรายการ โดยแต่ละรายการจะอ้างอิงถึงinodeเดียวกัน[ 9 ]การสร้างฮาร์ดลิงก์ไม่ได้คัดลอกเนื้อหาของไฟล์ แต่เพียงทำให้ชื่ออื่นเชื่อมโยงกับเนื้อหาเดียวกันเท่านั้น เมื่อสร้างฮาร์ดลิงก์สำหรับไฟล์ตัวนับใน inode ของไฟล์นั้นจะเพิ่มขึ้น และการลบฮาร์ดลิงก์จะทำให้ตัวนับลดลง ไฟล์จะไม่ถูกลบ (เพื่อให้สามารถใช้พื้นที่จัดเก็บซ้ำได้) จนกว่าจำนวนการอ้างอิงจะถึงศูนย์[ 1 ] [ 10 ]ฮาร์ดลิงก์สามารถอ้างอิงถึงวัตถุบนระบบไฟล์ เดียวกันเท่านั้น [ 11 ]
ลิงก์สัญลักษณ์อ้างอิงถึงไฟล์อื่นโดยใช้เส้นทาง (การอ้างอิงสัญลักษณ์) [ 4 ]เมื่อพบในระหว่างการแก้ไขชื่อเส้นทาง ให้แก้ไขการแก้ไขชื่อเส้นทางให้ไปยังตำแหน่งที่ลิงก์สัญลักษณ์นั้นมีอยู่ เนื้อหาของลิงก์สัญลักษณ์คือเส้นทางเป้าหมาย ซึ่งสามารถตรวจสอบได้ผ่านreadlinkคำสั่ง[ 12 ]ลิงก์สัญลักษณ์อาจระบุเส้นทางที่ไม่ได้อ้างอิงถึงไฟล์ที่มีอยู่ การแก้ไขลิงก์สัญลักษณ์ดังกล่าวจะล้มเหลวจนกว่าจะมีการสร้างไฟล์ที่เส้นทางที่ระบุ นอกจากนี้ ลิงก์สัญลักษณ์ไปยังไฟล์ที่มีอยู่จะไม่สามารถแก้ไขได้หากไฟล์นั้นถูกย้าย[ 9 ]
ใช้
ตามข้อกำหนด Single Unix Specification คำสั่ง นี้lnระบุไว้ในเอกสาร Shell and Utilities (XCU) [ 13 ] POSIXมีข้อกำหนดที่คล้ายกัน[ 5 ]
หากไม่ได้ระบุทั้งไฟล์เป้าหมายหรือไดเร็กทอรีเป้าหมาย ระบบจะสร้างลิงก์ในไดเร็กทอรีทำงานปัจจุบัน
ตัวเลือก
ข้อกำหนดระบุตัวเลือกบรรทัดคำสั่งที่ต้องรองรับ:
-f(บังคับ) ลบไฟล์ที่มีอยู่แล้ว หากเส้นทางเอาต์พุตระบุไฟล์ที่มีอยู่แล้ว-Lหากตัวดำเนินการต้นทางระบุลิงก์สัญลักษณ์ ให้สร้างฮาร์ดลิงก์ไปยังไฟล์เป้าหมายของลิงก์นั้น-Pหากตัวดำเนินการต้นทางระบุลิงก์สัญลักษณ์ ให้สร้างฮาร์ดลิงก์ไปยังไฟล์ลิงก์สัญลักษณ์นั้น-sสร้างลิงก์สัญลักษณ์แทนลิงก์ถาวร ซึ่งจะทำให้ ระบบเพิกเฉย-Lต่อ-Pข้อความแจ้งเตือน
-Lหากมีการระบุ ตัวเลือกมากกว่าหนึ่งตัวเลือกที่ไม่สามารถใช้ร่วมกันได้-Pตัวเลือกสุดท้ายที่ระบุจะเป็นตัวกำหนดพฤติกรรมที่เกิดขึ้น
หาก-sไม่ได้ระบุตัวเลือก และไม่ได้ระบุทั้งตัวเลือก a -Lหรือ a การใช้งานจะกำหนดว่าตัวเลือกใดในตัวเลือก a และ a จะถูกใช้เป็นค่าเริ่มต้น -P-L-P
การเรียกใช้งานแบบแถวเดียว
คำสั่งนี้จะสร้างลิงก์ใหม่ไปยังพาธที่ระบุโดยsourceและจัดเก็บไว้ที่พาธที่ระบุโดยtargetไวยากรณ์มีดังนี้:
ln [-fs] [-L|-P] source target การเรียกใช้ไฟล์หลายไฟล์
คำสั่งนี้จะสร้างลิงก์ใหม่ไปยังไฟล์แต่ละไฟล์ที่ระบุโดยsource_#ตัวดำเนินการ ซึ่งจัดเก็บไว้ในไดเร็กทอรีที่มีอยู่ซึ่งระบุโดยtarget_dir.
ln [-fs] [-L|-P] source_1 source_2 ... target_dir ตัวอย่าง
ต่อไปนี้คือการสร้างฮาร์ดลิงก์ไปยังไฟล์fooที่ ชื่อว่าbar
ln foo bar
คำสั่งต่อไปนี้จะสร้างลิงก์สัญลักษณ์ไปยังไฟล์fooที่ ชื่อว่าbar
ln -s foo bar
ดูเพิ่มเติม
ลิงก์ภายนอก
- – คู่มือคำสั่งผู้ใช้Linux
- – คู่มือคำสั่งทั่วไปของ FreeBSD
- – คู่มือคำสั่งทั่วไปของ NetBSD
- – คู่มือคำสั่งทั่วไปของ OpenBSD
- – คู่มือคำสั่งทั่วไปสำหรับDarwinและmacOS
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ ln (Unix)
ln เป็น คำสั่ง เชลล์ สำหรับสร้างลิงก์ไปยังไฟล์หรือไดเร็กทอรีที่มีอยู่[ 1 ] โดย ค่า เริ่ม ต้น คำสั่งนี้จะสร้าง ฮาร์ดลิงก์ แต่หากใช้ ตัวเลือก บรรทัดคำสั่ง จะสร้างลิงก์ สัญลักษณ์ [ 2...
ลิงก์
ลิงก์ช่วยให้เส้นทางมากกว่าหนึ่ง เส้นทาง สามารถอ้างอิงถึงไฟล์เดียวกันได้
ใช้
ตาม ข้อกำหนด Single Unix Specification คำสั่ง นี้ ln ระบุไว้ในเอกสาร Shell and Utilities (XCU) [ 13 ] POSIX มีข้อกำหนดที่คล้ายกัน [ 5 ]
ตัวเลือก
ข้อกำหนดระบุตัวเลือกบรรทัดคำสั่งที่ต้องรองรับ: