การทำความเข้าใจคำสั่ง Linux: Ar

NS GNUar โปรแกรม สร้างแก้ไขและแยกรายการจากไฟล์เก็บถาวร หนึ่ง คลังเก็บเอกสารสำคัญ เป็นไฟล์เดียวที่เก็บคอลเล็กชันของผู้อื่น ไฟล์ ในโครงสร้างที่ทำให้สามารถเรียกค้นไฟล์ต้นฉบับแต่ละไฟล์ได้ (เรียกว่า สมาชิก ของเอกสารสำคัญ)

ภาพรวม

คำสั่ง Linux ar

เนื้อหา โหมด (การอนุญาต) ของไฟล์ต้นฉบับ การประทับเวลา เจ้าของ และกลุ่มจะยังคงอยู่ในไฟล์เก็บถาวรและสามารถกู้คืนได้จากการแตกไฟล์

GNU ar สามารถเก็บรักษาเอกสารสำคัญที่สมาชิกมีชื่อยาวเท่าใดก็ได้ อย่างไรก็ตามขึ้นอยู่กับว่า ar ได้รับการกำหนดค่าบนระบบของคุณ อาจมีการจำกัดความยาวของชื่อสมาชิกเพื่อให้เข้ากันได้กับรูปแบบไฟล์เก็บถาวรที่รักษาไว้กับเครื่องมืออื่นๆ หากมี ขีดจำกัดมักจะอยู่ที่ 15 อักขระ

อา ถือเป็นยูทิลิตี้ไบนารีเนื่องจากไฟล์เก็บถาวรประเภทนี้มักใช้เป็น ห้องสมุด ถือรูทีนย่อยที่จำเป็นโดยทั่วไป

อา สร้างดัชนีให้กับสัญลักษณ์ที่กำหนดไว้ในโมดูลอ็อบเจ็กต์ที่ย้ายได้ในไฟล์เก็บถาวรเมื่อคุณระบุตัวดัดแปลง NS. เมื่อสร้างแล้ว ดัชนีนี้จะอัปเดตในไฟล์เก็บถาวรทุกครั้ง ar ทำการเปลี่ยนแปลงเนื้อหา (บันทึกไว้สำหรับ NS ปรับปรุงการทำงาน) ไฟล์เก็บถาวรที่มีดัชนีดังกล่าวช่วยเพิ่มความเร็วในการลิงก์ไปยังไลบรารี และอนุญาตให้รูทีนในไลบรารีสามารถโทรหากันได้โดยไม่คำนึงถึงตำแหน่งในไฟล์เก็บถาวร

คุณสามารถใช้ นาโนเมตร -s หรือ นาโนเมตร --print-armap เพื่อแสดงรายการตารางดัชนีนี้ หากไฟล์เก็บถาวรไม่มีตาราง รูปแบบอื่นของ ar เรียกว่า ranlib เพิ่มเฉพาะตาราง

GNU ar ได้รับการออกแบบให้เข้ากันได้กับสองสิ่งอำนวยความสะดวกที่แตกต่างกัน ควบคุมกิจกรรมโดยใช้ตัวเลือกบรรทัดคำสั่ง เช่น. ที่หลากหลาย ar บน ระบบยูนิกซ์; หรือถ้าคุณระบุซิงเกิ้ล สั่งการ-ตัวเลือกไลน์ -NSคุณสามารถควบคุมได้ด้วยสคริปต์ที่มาจากอินพุตมาตรฐาน

เรื่องย่อ

คำสั่งใช้รูปแบบทั่วไปต่อไปนี้:

ar [-X32_64] [-]p[mod [relpos] [นับ]] เก็บถาวร [สมาชิก...] 

ตัวเลือก

GNU ar ให้คุณผสมรหัสการทำงาน NS และแฟล็กตัวแก้ไข mod ในลำดับใดก็ได้ภายในอาร์กิวเมนต์บรรทัดคำสั่งแรก

หากต้องการ คุณสามารถเริ่มอาร์กิวเมนต์บรรทัดคำสั่งแรกด้วยเครื่องหมายขีดได้

NS NS keyletter ระบุการดำเนินการที่จะดำเนินการ อาจเป็นอย่างใดอย่างหนึ่งต่อไปนี้ แต่คุณต้องระบุเพียงหนึ่งในนั้น:

  • NS: ลบ โมดูลจากไฟล์เก็บถาวร ระบุชื่อของโมดูลที่จะลบเป็น สมาชิก; ที่เก็บถาวรจะไม่ถูกแตะต้องหากคุณไม่ได้ระบุไฟล์ที่จะลบ หากคุณระบุ วี ตัวดัดแปลง ar แสดงรายการแต่ละโมดูลตามที่ถูกลบ
  • NS: ใช้การดำเนินการนี้เพื่อ เคลื่อนไหว สมาชิกในไฟล์เก็บถาวร การจัดลำดับสมาชิกในไฟล์เก็บถาวรสามารถสร้างความแตกต่างในการเชื่อมโยงโปรแกรมโดยใช้ไลบรารี หากมีการกำหนดสัญลักษณ์ไว้ในสมาชิกมากกว่าหนึ่งราย หากไม่มีการใช้โมดิฟายเออร์กับ NS, สมาชิกใด ๆ ที่คุณตั้งชื่อใน สมาชิก อาร์กิวเมนต์จะถูกย้ายไปที่ จบ ของเอกสารสำคัญ; คุณสามารถใช้ NS, NS, หรือ ผม ตัวดัดแปลงเพื่อย้ายไปยังตำแหน่งที่กำหนดแทน
  • NS: พิมพ์ สมาชิกที่ระบุของไฟล์เก็บถาวร ไปยังไฟล์เอาต์พุตมาตรฐาน ถ้า วี มีการระบุตัวแก้ไข ให้แสดงชื่อสมาชิกก่อนคัดลอกเนื้อหาไปยังเอาต์พุตมาตรฐาน หากคุณระบุไม่ สมาชิก อาร์กิวเมนต์ ไฟล์ทั้งหมดในไฟล์เก็บถาวรจะถูกพิมพ์
  • NS: ต่อท้ายอย่างรวดเร็ว; ในอดีต เพิ่มไฟล์ สมาชิก จนถึงจุดสิ้นสุดของ คลังเก็บเอกสารสำคัญโดยไม่ต้องตรวจสอบการทดแทน ตัวดัดแปลง NS, NS, และ ผม ทำ ไม่ ส่งผลกระทบต่อการดำเนินการนี้ สมาชิกใหม่จะอยู่ท้ายไฟล์เสมอ ตัวดัดแปลง วี ทำให้ ar แสดงรายการแต่ละไฟล์ตามที่ต่อท้าย เนื่องจากประเด็นของการดำเนินการนี้คือความเร็ว ดัชนีตารางสัญลักษณ์ของไฟล์เก็บถาวรจึงไม่อัปเดต แม้ว่าจะมีอยู่แล้วก็ตาม คุณสามารถใช้ได้ ar s หรือ ranlib อย่างชัดเจนในการปรับปรุงดัชนีตารางสัญลักษณ์ อย่างไรก็ตาม ระบบที่แตกต่างกันจำนวนมากเกินไปถือว่า Quick append สร้างดัชนีใหม่ ดังนั้น GNU ar จึงใช้ "q" เป็นคำพ้องความหมายสำหรับ "r"
  • NS: แทรกไฟล์ สมาชิก เข้าไปข้างใน คลังเก็บเอกสารสำคัญ (กับ ทดแทน). การดำเนินการนี้แตกต่างจาก NS โดยที่สมาชิกที่มีอยู่ก่อนหน้านี้จะถูกลบออกหากชื่อของพวกเขาตรงกับที่เพิ่มเข้ามา หากไฟล์ใดไฟล์หนึ่งชื่อใน สมาชิก ไม่ได้อยู่, ar แสดงข้อความแสดงข้อผิดพลาดและไม่รบกวนสมาชิกที่มีอยู่ของไฟล์เก็บถาวรที่ตรงกับชื่อนั้น โดยค่าเริ่มต้น สมาชิกใหม่จะถูกเพิ่มที่ส่วนท้ายของไฟล์ แต่คุณสามารถใช้ตัวแก้ไขตัวใดตัวหนึ่งได้ NS, NS, หรือ ผม เพื่อขอตำแหน่งที่สัมพันธ์กับสมาชิกที่มีอยู่บางส่วน ตัวดัดแปลง วี ใช้กับการดำเนินการนี้ทำให้เกิดบรรทัดของเอาต์พุตสำหรับแต่ละไฟล์ที่แทรก พร้อมด้วยตัวอักษรตัวใดตัวหนึ่ง NS หรือ NS เพื่อระบุว่าไฟล์ถูกต่อท้าย (ไม่มีสมาชิกเก่าถูกลบ) หรือถูกแทนที่
  • NS: แสดง ตาราง แสดงรายการเนื้อหาของ คลังเก็บเอกสารสำคัญหรือไฟล์ที่อยู่ใน สมาชิก ที่มีอยู่ในไฟล์เก็บถาวร โดยปกติจะแสดงเฉพาะชื่อสมาชิก หากคุณต้องการดูโหมด (การอนุญาต), การประทับเวลา, เจ้าของ, กลุ่มและขนาดด้วย คุณสามารถร้องขอได้โดยระบุ วี ตัวแก้ไข หากคุณไม่ระบุ a สมาชิกไฟล์ทั้งหมดในไฟล์เก็บถาวรจะแสดงรายการ หากมีมากกว่าหนึ่งไฟล์ที่มีชื่อเหมือนกัน (เช่น เหม่) ในไฟล์เก็บถาวร (พูด ), ar t b.a fie แสดงรายการเฉพาะตัวอย่างแรก หากต้องการดูทั้งหมด คุณต้องขอรายชื่อทั้งหมด—ในตัวอย่างของเรา ar t b.a.
  • NS: สารสกัด สมาชิก (ชื่อ สมาชิก) จากไฟล์เก็บถาวร ใช้ วี แก้ไขด้วยการดำเนินการนี้เพื่อขอให้ ar แสดงรายการแต่ละชื่อตามที่แยกออกมา หากคุณไม่ระบุ a สมาชิกไฟล์ทั้งหมดในไฟล์เก็บถาวรจะถูกแยกออกมา

ตัวดัดแปลงหลายอย่างอาจปฏิบัติตาม .ทันที NS keyletter เพื่อระบุการเปลี่ยนแปลงพฤติกรรมของการดำเนินการ:

  • NS: เพิ่มไฟล์ใหม่ หลังจาก สมาชิกที่มีอยู่ของไฟล์เก็บถาวร หากคุณใช้ตัวดัดแปลง NS, ชื่อของสมาชิกที่เก็บถาวรที่มีอยู่จะต้องแสดงเป็น เรปโป อาร์กิวเมนต์ก่อน คลังเก็บเอกสารสำคัญ ข้อกำหนด
  • NS: เพิ่มไฟล์ใหม่ ก่อน สมาชิกที่มีอยู่ของไฟล์เก็บถาวร หากคุณใช้ตัวดัดแปลง NS, ชื่อของสมาชิกที่เก็บถาวรที่มีอยู่จะต้องแสดงเป็น เรปโป อาร์กิวเมนต์ก่อน คลังเก็บเอกสารสำคัญ ข้อมูลจำเพาะ (เช่นเดียวกับ ผม).
  • : สร้าง ไฟล์เก็บถาวร ไฟล์เก็บถาวรที่ระบุจะถูกสร้างขึ้นเสมอหากไม่มีอยู่ เมื่อคุณร้องขอการอัปเดต แต่จะมีการออกคำเตือนเว้นแต่คุณจะระบุล่วงหน้าว่าคุณคาดว่าจะสร้างโดยใช้ตัวปรับแต่งนี้
  • NS: ตัดชื่อในไฟล์เก็บถาวร GNU ar ปกติจะอนุญาตให้ชื่อไฟล์มีความยาวเท่าใดก็ได้ บังคับให้สร้างไฟล์เก็บถาวรที่ไม่เข้ากันกับ ar โปรแกรมในบางระบบ หากความเข้ากันได้เป็นปัญหา NS ตัวแก้ไขอาจถูกใช้เพื่อตัดชื่อไฟล์เมื่อใส่ไว้ในไฟล์เก็บถาวร
  • ผม: แทรกไฟล์ใหม่ ก่อน สมาชิกที่มีอยู่ของไฟล์เก็บถาวร หากคุณใช้ตัวดัดแปลง ผม, ชื่อของสมาชิกที่เก็บถาวรที่มีอยู่จะต้องแสดงเป็น เรปโป อาร์กิวเมนต์ก่อน คลังเก็บเอกสารสำคัญ ข้อมูลจำเพาะ (เช่นเดียวกับ NS).
  • l: ตัวดัดแปลงนี้ได้รับการยอมรับแต่ไม่ได้ใช้
  • NS: ใช้ นับ พารามิเตอร์. ใช้ในกรณีที่มีหลายรายการในไฟล์เก็บถาวรที่มีชื่อเดียวกัน แยกหรือลบอินสแตนซ์ นับ ของชื่อที่กำหนดจากไฟล์เก็บถาวร
  • o: อนุรักษ์ ต้นฉบับ วันที่ของสมาชิกเมื่อทำการดึงข้อมูล หากคุณไม่ระบุตัวแก้ไขนี้ ไฟล์ที่แยกจากไฟล์เก็บถาวรจะถูกประทับด้วยเวลาของการแตกไฟล์
  • NS: ใช้ชื่อพาธแบบเต็มเมื่อจับคู่ชื่อในไฟล์เก็บถาวร GNU ar สร้างไฟล์เก็บถาวรที่มีชื่อพาธแบบเต็มไม่ได้ แต่ผู้สร้างไฟล์เก็บถาวรรายอื่นๆ ทำได้ ตัวเลือกนี้จะทำให้ GNU ar เพื่อจับคู่ชื่อไฟล์โดยใช้ชื่อพาธที่สมบูรณ์ ซึ่งสะดวกเมื่อแยกไฟล์เดียวจากไฟล์เก็บถาวรที่สร้างโดยเครื่องมืออื่น
  • NS: เขียนดัชนีไฟล์อ็อบเจ็กต์ลงในไฟล์เก็บถาวร หรืออัปเดตดัชนีที่มีอยู่ แม้ว่าจะไม่ได้ทำการเปลี่ยนแปลงอื่นๆ กับไฟล์เก็บถาวรก็ตาม คุณสามารถใช้แฟล็กตัวแก้ไขนี้กับการดำเนินการใดๆ หรือเพียงอย่างเดียว วิ่ง ar s ในไฟล์เก็บถาวรเทียบเท่ากับการวิ่ง ranlib เกี่ยวกับมัน
  • NS: อย่าสร้างตารางสัญลักษณ์เก็บถาวร การตั้งค่านี้สามารถเพิ่มความเร็วในการสร้างห้องสมุดขนาดใหญ่ได้หลายขั้นตอน ไฟล์เก็บถาวรที่เป็นผลลัพธ์ไม่สามารถใช้กับตัวเชื่อมโยงได้ ในการสร้างตารางสัญลักษณ์ คุณต้องละเว้น NS ตัวแก้ไขในการดำเนินการครั้งสุดท้ายของ arหรือต้องวิ่ง ranlib บนไฟล์เก็บถาวร
  • ยู: โดยทั่วไป, ar r... แทรกไฟล์ทั้งหมดที่อยู่ในไฟล์เก็บถาวร หากคุณต้องการแทรก เท่านั้น ของไฟล์ที่คุณแสดงรายการที่ใหม่กว่าสมาชิกที่มีอยู่ที่มีชื่อเดียวกัน ให้ใช้ตัวแก้ไขนี้ NS ยู ตัวดัดแปลงได้รับอนุญาตสำหรับการดำเนินการเท่านั้น NS (แทนที่). โดยเฉพาะการรวมกัน qu ไม่อนุญาต เนื่องจากการตรวจสอบการประทับเวลาจะสูญเสียความได้เปรียบด้านความเร็วจากการทำงาน NS.
  • วี: ตัวแก้ไขนี้ร้องขอ ละเอียด เวอร์ชันของการดำเนินการ แสดงการทำงานหลายอย่าง ข้อมูลเพิ่มเติมเช่นชื่อไฟล์ที่ประมวลผลเมื่อตัวแก้ไข วี ถูกผนวก
  • วี: ตัวแก้ไขนี้แสดงหมายเลขเวอร์ชันของ ar.

ใช้ ชาย สั่งการ (% ชาย) เพื่อดูวิธีการใช้คำสั่งบนคอมพิวเตอร์เฉพาะของคุณ

การเก็บถาวรรูปแบบอื่น

Linux รองรับวิธีการต่างๆ มากมายในการเก็บถาวรไฟล์ ตัวอย่างเช่น ไฟล์ ZIP เป็นแบบข้ามแพลตฟอร์ม แม้ว่า ar มีประโยชน์สำหรับการเก็บถาวรในเครื่องอย่างรวดเร็ว ให้พิจารณารูปแบบอื่นหากคุณวางแผนที่จะแบ่งปันไฟล์เก็บถาวรกับคนที่ใช้ Windows

วิธีบีบอัดไฟล์โดยใช้ Command Line ของ Linux