รูปแบบไฟล์เก็บถาวร SHAR
SHAR (Shell Archive) เป็นรูปแบบไฟล์เก็บถาวรบน Unix ที่รวมไฟล์เข้าด้วยกันเป็นเชลล์สคริปต์เดียว รูปแบบนี้จะเข้ารหัสไฟล์เป็นสคริปต์ข้อความธรรมดาที่สามารถดำเนินการบนระบบที่คล้าย Unix เพื่อสร้างไฟล์ต้นฉบับขึ้นมาใหม่ SHAR ถูกนำมาใช้กันอย่างแพร่หลายในยุคแรกๆ ของ Unix สำหรับการเผยแพร่ซอฟต์แวร์และแบ่งปันคอลเลกชันไฟล์ โดยเฉพาะอย่างยิ่งผ่านทางอีเมลหรือ Usenet แม้ว่าจะถูกแทนที่โดยรูปแบบที่ทันสมัยกว่าอย่าง tar และ zip แต่ SHAR ยังคงเป็นรูปแบบในอดีตที่สำคัญในระบบนิเวศ Unix ซึ่งมีคุณค่าสำหรับความเรียบง่ายและความสามารถในการสร้างและแตกไฟล์โดยใช้คำสั่งเชลล์พื้นฐาน
ข้อมูลการเก็บถาวร SHAR ทั่วไป
ไฟล์เก็บถาวร SHARR (ไฟล์เก็บถาวรของ Shell) เป็นรูปแบบที่ใช้ Unix ซึ่งใช้สำหรับรวมไฟล์หลาย ๆ ไฟล์เป็นสคริปต์ข้อความธรรมดาตัวเดียว เมื่อดำเนินการ สคริปต์นี้จะสร้างไฟล์และไดเร็กทอรีต้นฉบับขึ้นใหม่บนระบบที่คล้าย Unix SHAR ได้รับความนิยมเป็นพิเศษในยุคแรกๆ ของ Unix สำหรับการแจกจ่ายซอฟต์แวร์ เอกสาร และคอลเลกชั่นไฟล์อื่นๆ ผ่านทางอีเมลหรือ Usenet แม้ว่ารูปแบบการบีบอัดสมัยใหม่จะเข้ามาแทนที่ SHAR เป็นส่วนใหญ่ แต่ก็ยังคงเป็นรูปแบบที่สำคัญในประวัติศาสตร์ Unix เนื่องจากความเรียบง่ายและใช้งานง่ายด้วยคำสั่งเชลล์พื้นฐาน
ประวัติรูปแบบไฟล์เก็บถาวร SHAR
- ทศวรรษ 1980: SHAR กลายเป็นวิธีที่สะดวกในการรวมไฟล์เป็นสคริปต์เดียวเพื่อเผยแพร่บนระบบ Unix มีประโยชน์อย่างยิ่งในสภาพแวดล้อมที่อีเมลและ Usenet เป็นช่องทางหลักในการแบ่งปันซอฟต์แวร์และไฟล์
- ต้นปี 1990: เมื่อการใช้งานอินเทอร์เน็ตเพิ่มมากขึ้น SHAR ยังคงเป็นรูปแบบที่นิยมในการเผยแพร่ไฟล์ผ่านอีเมล โดยมีรูปแบบข้อความธรรมดาที่สามารถถ่ายโอนผ่านเครือข่ายยุคแรกๆ ได้อย่างง่ายดาย
- กลางทศวรรษ 1990: การเพิ่มขึ้นของรูปแบบไฟล์เก็บถาวรขั้นสูง เช่น tar รวมกับเครื่องมือบีบอัด เช่น gzip ทำให้การใช้งาน SHAR ลดลง แม้ว่าจะยังคงใช้สำหรับการกระจายแบบข้อความที่เรียบง่ายก็ตาม ยุค 2000: SHAR กลายเป็นรูปแบบเฉพาะมากขึ้น โดยส่วนใหญ่จะใช้ในชุมชน Unix ที่เฉพาะเจาะจงหรือเพื่อจุดประสงค์ทางประวัติศาสตร์ ความง่ายในการสร้างและความเข้ากันได้กับคำสั่งเชลล์พื้นฐานทำให้มีความเกี่ยวข้องกับงานบางอย่าง
- ปัจจุบัน: แม้ว่ารูปแบบไฟล์เก็บถาวรสมัยใหม่จะถูกแทนที่ด้วยรูปแบบไฟล์เก็บถาวรสมัยใหม่ แต่ SHAR ยังคงได้รับการยอมรับจากบทบาทของตนในประวัติศาสตร์ Unix และมีการใช้เป็นครั้งคราวในระบบเดิมหรือเพื่อวัตถุประสงค์ทางการศึกษา
โครงสร้างของไฟล์เก็บถาวรเชลล์
โครงสร้างของไฟล์ SHAR (Shell Archive) ได้รับการออกแบบให้เป็นสคริปต์แบบขยายในตัวที่สามารถดำเนินการบนระบบที่คล้ายกับ Unix ไฟล์ SHAR แตกต่างจากไฟล์เก็บถาวรแบบไบนารีตรงที่เป็นข้อความธรรมดาและได้รับการตีความโดยเชลล์ ต่อไปนี้เป็นภาพรวมของโครงสร้างของไฟล์เก็บถาวร SHAR ทั่วไป:
- ส่วนหัว: ไฟล์เก็บถาวร SHAR เริ่มต้นด้วยส่วนหัวที่โดยทั่วไปจะมีความคิดเห็นเกี่ยวกับไฟล์เก็บถาวร เช่น วันที่สร้าง ผู้เขียน และคำอธิบายของเนื้อหา ส่วนนี้อาจรวมถึงคำแนะนำในการแตกไฟล์เก็บถาวรด้วย
- คำสั่งไฟล์:
- แต่ละไฟล์ภายในไฟล์เก็บถาวร SHAR จะแสดงด้วยชุดคำสั่งเชลล์ คำสั่งเหล่านี้มักจะเริ่มต้นด้วยคำสั่ง echo หรือ cat ที่เขียนเนื้อหาไฟล์ไปยังตำแหน่งที่เหมาะสมบนระบบ
- คำสั่งไฟล์ยังรวมถึงคำสั่งเพื่อตั้งค่าการอนุญาตไฟล์ที่ถูกต้อง โดยใช้คำสั่ง chmod หลังจากแต่ละไฟล์ถูกสร้างขึ้น
- เนื้อหาไฟล์: เนื้อหาจริงของแต่ละไฟล์รวมอยู่ในไฟล์เก็บถาวร SHAR ซึ่งโดยทั่วไปจะเข้ารหัสโดยใช้วิธีแบบข้อความ เช่น uuencoding เพื่อให้แน่ใจว่าไฟล์ไบนารี่สามารถรวมไว้ในไฟล์เก็บถาวรและถ่ายโอนเป็นข้อความธรรมดาได้อย่างปลอดภัย
- โครงสร้างไดเร็กทอรี: หากไฟล์เก็บถาวร SHAR มีไดเร็กทอรี สคริปต์จะรวมคำสั่งเพื่อสร้างไดเร็กทอรีเหล่านี้โดยใช้คำสั่ง mkdir ก่อนที่ไฟล์จะถูกแยกออกมา
- ส่วนท้าย: ไฟล์เก็บถาวร SHAR จะลงท้ายด้วยส่วนท้าย ซึ่งมักจะมีความคิดเห็นเพิ่มเติม ผลรวมตรวจสอบ หรือข้อมูลเมตาอื่น ๆ สำหรับการตรวจสอบความสมบูรณ์ของไฟล์ที่แยกออกมา ส่วนท้ายอาจมีข้อความระบุว่ากระบวนการแยกข้อมูลเสร็จสมบูรณ์แล้ว
วิธีการบีบอัด SHAR
ไฟล์ SHAR (Shell Archive) ไม่มีวิธีการบีบอัดใด ๆ ภายในรูปแบบโดยธรรมชาติ แต่เป็นเชลล์สคริปต์ข้อความล้วนที่ออกแบบมาเพื่อรวมไฟล์เพื่อการแจกจ่ายและการแยกข้อมูลในสภาพแวดล้อมที่คล้ายกับ Unix อย่างไรก็ตาม การบีบอัดสามารถทำได้หลายวิธี:
- ไม่บีบอัด: ตามค่าเริ่มต้น ไฟล์เก็บถาวร SHAR จะเป็นไฟล์ข้อความที่ไม่มีการบีบอัด ทำให้สามารถอ่านและเรียกใช้งานในรูปแบบเชลล์สคริปต์ได้อย่างง่ายดาย วิธีการนี้รักษาความเรียบง่ายและความเข้ากันได้ในวงกว้าง ทำให้สามารถแตกไฟล์ได้อย่างง่ายดายด้วยคำสั่งเชลล์มาตรฐาน
- การบีบอัดภายนอก: ไฟล์ SHAR สามารถบีบอัดได้โดยใช้เครื่องมือบีบอัดภายนอก เช่น GZIP, BZIP2 หรือ ZIP หลังจากที่สร้างแล้ว ซึ่งจะช่วยลดขนาดไฟล์โดยรวมสำหรับการแจกจ่ายหรือการจัดเก็บ แต่ต้องมีการบีบอัดก่อนจึงจะสามารถดำเนินการเก็บถาวร SHAR ได้ ตัวอย่างเช่น ไฟล์ SHAR อาจถูกแจกจ่ายเป็นไฟล์ .shar.gz หรือ .shar.bz2
- การบีบอัดหลังการแกะกล่อง: ในบางกรณี ไฟล์เก็บถาวร SHAR อาจมีคำสั่งภายในสคริปต์เพื่อบีบอัดไฟล์แต่ละไฟล์หลังจากแตกไฟล์แล้ว สิ่งนี้พบได้น้อย แต่สามารถใช้ได้เมื่อไฟล์เฉพาะภายในไฟล์เก็บถาวรจำเป็นต้องได้รับการบีบอัดซึ่งเป็นส่วนหนึ่งของกระบวนการคลายแพ็ก
- การใช้งานร่วมกับ TAR: แม้ว่า SHAR เองจะไม่รวมการบีบอัด แต่ก็สามารถรวมกับไฟล์เก็บถาวร TAR (ซึ่งสามารถบีบอัดได้ในภายหลัง) เพื่อสร้าง .tar.shar.gz หรือไฟล์ที่คล้ายกัน วิธีนี้ช่วยให้สามารถเก็บถาวรและบีบอัดคอลเลกชันไฟล์ขนาดใหญ่ได้ในขั้นตอนเดียว
.shar การดำเนินการที่รองรับ
Aspose.Zip API รองรับการดำเนินการที่หลากหลายสำหรับการทำงานกับไฟล์ .shar ซึ่งเป็นไฟล์อิมเมจของดิสก์ที่ใช้กันทั่วไปในการเผยแพร่ซอฟต์แวร์และสร้างการสำรองข้อมูล การดำเนินการหลักบางส่วนที่รองรับโดย Aspose.Zip API สำหรับไฟล์ .shar มีดังนี้
- การสร้างคลังเก็บ SHAR: ไฟล์ SHAR นอกเหนือจากความเรียบง่ายแล้ว ยังนำเสนอแนวทางที่หลากหลายในการเผยแพร่ซอฟต์แวร์และการสร้างการสำรองข้อมูล Aspose.Zip ช่วยให้คุณสามารถใช้ประโยชน์จากรูปแบบนี้ได้อย่างราบรื่นด้วยชุดฟังก์ชันที่ครอบคลุม สร้างไฟล์เก็บถาวร SHAR ใหม่ล่าสุดจากไฟล์และไดเร็กทอรีที่มีอยู่ของคุณ ฟังก์ชันนี้เหมาะอย่างยิ่งสำหรับการสร้างโปรแกรมติดตั้งซอฟต์แวร์หรือการสำรองข้อมูลแบบครอบคลุม Aspose.Zip อาจไม่รองรับฟังก์ชันทั้งหมดที่เกี่ยวข้องกับไฟล์เก็บถาวรแบบเดิม เช่น ZIP, RAR, 7Z และรูปแบบอื่นๆ สำหรับไฟล์ SHAR
โครงสร้างของไฟล์ .shar
ไฟล์ SHARA โดยพื้นฐานแล้วคือเชลล์สคริปต์ เป็นรูปแบบข้อความที่มีคำสั่งในการสร้างโครงสร้างไฟล์ต้นฉบับใหม่เมื่อดำเนินการ โครงสร้างพื้นฐาน:
- ส่วนหัวของสคริปต์เชลล์: ส่วนหัวของสคริปต์เชลล์มาตรฐาน (เช่น #!/bin/sh)
- ข้อมูลเมตาของไฟล์: ข้อมูลเกี่ยวกับแต่ละไฟล์ รวมถึงชื่อไฟล์ สิทธิ์ และเวลาในการแก้ไข
- เนื้อหาไฟล์: เนื้อหาไฟล์จริง ซึ่งโดยทั่วไปจะเข้ารหัสในรูปแบบ base64 หรือรูปแบบที่คล้ายกัน
- คำสั่งเชลล์: คำสั่งเพื่อสร้างไดเร็กทอรีและเขียนเนื้อหาไฟล์ลงดิสก์
การเสื่อมถอยของคลังเอกสาร SHAR
เหตุผลในการปฏิเสธ
ปัจจุบัน ไฟล์เก็บถาวร SHAR ถือเป็นรูปแบบดั้งเดิมและไม่ค่อยได้ใช้ในการเผยแพร่ซอฟต์แวร์สมัยใหม่ อาจยังคงพบสิ่งเหล่านี้ในไฟล์เก็บถาวรซอฟต์แวร์ในอดีตหรือในสถานการณ์เฉพาะที่จำเป็นต้องมีความเข้ากันได้กับระบบเก่ามาก แต่ส่วนใหญ่ถูกแทนที่ด้วยวิธีการเก็บถาวรที่มีประสิทธิภาพและเชื่อถือได้มากกว่า
- ฟังก์ชันการทำงานที่จำกัด: ไฟล์เก็บถาวร SHAR ขาดคุณสมบัติที่พบในรูปแบบไฟล์เก็บถาวรสมัยใหม่ เช่น การบีบอัด การจัดการข้อผิดพลาด และการเก็บรักษาข้อมูลเมตา
- ข้อกังวลด้านความปลอดภัย: เนื่องจากเชลล์สคริปต์ ไฟล์ SHAR อาจมีโค้ดที่เป็นอันตราย ซึ่งก่อให้เกิดความเสี่ยงด้านความปลอดภัย
- ประสิทธิภาพ: เมื่อเทียบกับรูปแบบใหม่ โดยทั่วไป SHAR มีประสิทธิภาพน้อยกว่าในแง่ของความเร็วในการจัดเก็บและการแตกไฟล์
- การเกิดขึ้นของทางเลือกที่ดีกว่า: รูปแบบเช่น ZIP, TAR และ 7-Zip มอบประสิทธิภาพ ความปลอดภัย และฟีเจอร์ที่เหนือกว่า ทำให้เป็นตัวเลือกที่ต้องการสำหรับผู้ใช้ส่วนใหญ่
ตัวอย่างการใช้คลังเก็บ SHAR
Aspose.Zip มอบความสามารถในการสร้างไฟล์ SHAR (Shell Archive) ซึ่งช่วยให้คุณสามารถรวมไฟล์หลายไฟล์ไว้ในไฟล์เก็บถาวรเดียวเพื่อการเผยแพร่บนระบบ UNIX และ Linux ได้อย่างง่ายดาย อย่างไรก็ตาม สิ่งสำคัญที่ควรทราบคือ ปัจจุบัน Aspose.Zip รองรับเฉพาะการสร้างไฟล์เก็บถาวร SHAR เท่านั้น และไม่รวมฟังก์ชันสำหรับการดำเนินการอื่น ๆ เช่น การแยกหรือแก้ไขไฟล์ SHAR ที่มีอยู่ ด้านล่างนี้คือตัวอย่างที่สาธิตวิธีการสร้างไฟล์เก็บถาวร SHAR โดยใช้ Aspose.Zip ในโปรเจ็กต์ของคุณ
Create SHAR Arcive via C#
using(SharArchive a = new SharArchive())
{
a.CreateEntry(“first.bin”, “data.bin”);
a.Save(“result.shar”);
}
ข้อมูลเพิ่มเติม
มีคนถาม
1. ฉันจะแตกไฟล์จากไฟล์เก็บถาวร SHAR ได้อย่างไร
หากต้องการแยกไฟล์จากไฟล์ SHARE คุณต้องเรียกใช้ไฟล์ SHAR เอง สคริปต์จะรันคำสั่งเพื่อสร้างโครงสร้างไฟล์ดั้งเดิมขึ้นมาใหม่
2. แฟ้มเอกสาร SHARE ยังคงใช้อยู่ในปัจจุบันหรือไม่
คลังข้อมูล SHAR ไม่ค่อยได้ใช้ในปัจจุบัน รูปแบบไฟล์เก็บถาวรสมัยใหม่ เช่น ZIP, TAR และ 7-Zip นำเสนอคุณสมบัติและการรักษาความปลอดภัยที่เหนือกว่า ทำให้เป็นตัวเลือกที่ต้องการสำหรับผู้ใช้ส่วนใหญ่
3. ข้อจำกัดของการเก็บถาวร SHAR คืออะไร
ไฟล์เก็บถาวร SHAR มีข้อจำกัดหลายประการ รวมถึงการขาดการบีบอัด การรองรับข้อมูลเมตาที่จำกัด ความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้นเนื่องจากลักษณะของเชลล์สคริปต์ และความไร้ประสิทธิภาพเมื่อเปรียบเทียบกับรูปแบบไฟล์เก็บถาวรสมัยใหม่