คำถามติดแท็ก file-systems

2
จะตรวจจับการเข้ารหัสไฟล์ได้อย่างไร?
ในระบบไฟล์ของฉัน (Windows 7) ฉันมีไฟล์ข้อความบางไฟล์ (นี่คือไฟล์สคริปต์ SQL หากมีความสำคัญ) เมื่อเปิดด้วยNotepad ++ในเมนู "การเข้ารหัส" บางรายการถูกรายงานว่ามีการเข้ารหัส "UCS-2 Little Endian" และ "UTF-8 ที่ไม่มี BOM" บางส่วน ความแตกต่างที่นี่คืออะไร? พวกเขาทั้งหมดดูเหมือนจะเป็นสคริปต์ที่สมบูรณ์แบบ ฉันจะบอกได้อย่างไรว่าการเข้ารหัสไฟล์นั้นไม่มีแผ่นจดบันทึก ++

3
ประโยชน์ของการเขียนไปยังตำแหน่งชั่วคราวคืออะไรแล้วคัดลอกไปยังปลายทางที่ต้องการ
ฉันกำลังเขียนแอปพลิเคชันที่ทำงานกับภาพถ่ายดาวเทียมและเจ้านายของฉันขอให้ฉันดูแอปพลิเคชั่นเชิงพาณิชย์บางส่วนและดูว่ามันทำงานอย่างไร ฉันพบพฤติกรรมแปลก ๆ และเมื่อฉันมองฉันก็พบว่ามันอยู่ในแอปพลิเคชันมาตรฐานอื่น ๆ เช่นกัน โปรแกรมเหล่านี้ก่อนเขียนไปยังโฟลเดอร์ temp แล้วคัดลอกไปยังปลายทางที่ต้องการ ตัวอย่าง: 7zip แรกแยกไปยังโฟลเดอร์ temp แล้วคัดลอกข้อมูลที่แยกแล้วไปยังตำแหน่งที่คุณได้ขอให้แยกข้อมูลไป ฉันเห็นปัญหาหลายประการด้วยวิธีนี้: โฟลเดอร์ temp อาจมีพื้นที่ไม่เพียงพอในขณะที่ตำแหน่งที่ตั้งใจไว้อาจมีพื้นที่ว่างจำนวนมาก หากเป็นไฟล์ขนาดใหญ่อาจต้องใช้เวลาในการดำเนินการคัดลอก ฉันคิดเกี่ยวกับมันมาก แต่ฉันไม่เห็นจุดบวกเดียวที่จะทำสิ่งนี้ ฉันทำบางสิ่งหายไปหรือมีประโยชน์อย่างแท้จริงในการทำสิ่งนี้หรือไม่?

9
เหตุใดจึงควรใช้ระบบไฟล์สำหรับบันทึกแทน RDBMS
คำถามควรชัดเจนจากชื่อ ตัวอย่างเช่น Apache บันทึกการเข้าถึงและบันทึกข้อผิดพลาดในไฟล์แทน RDBMS ไม่ว่าจะมีการใช้งานขนาดใหญ่หรือขนาดเล็กเพียงใดก็ตาม สำหรับ RDMS เราเพียงแค่ต้องเขียนแบบสอบถาม SQL และมันจะทำงานในขณะที่สำหรับไฟล์ที่เราต้องตัดสินใจในรูปแบบเฉพาะแล้วเขียน regex หรืออาจจะแยกวิเคราะห์เพื่อจัดการกับพวกเขา และสิ่งเหล่านั้นอาจล้มเหลวในกรณีพิเศษหากไม่ได้รับการดูแลที่ดี ดูเหมือนว่าทุกคนจะชอบระบบไฟล์เพื่อบำรุงรักษาบันทึก ฉันไม่ได้ลำเอียงกับวิธีการใด ๆ เหล่านี้ แต่ฉันอยากจะรู้ว่าทำไมมันถึงมีประสบการณ์เช่นนี้ มันคือความเร็วหรือการบำรุงรักษาหรืออย่างอื่น?

11
ทำไมจึงมีการออกแบบระบบไฟล์ของคู่แข่งมากมาย? [ปิด]
แค่คำถามสั้น ๆ แต่ทำไมระบบไฟล์จำนวนมากถึงยังคงแข่งขันกันและใช้งานอยู่ในปัจจุบัน? (ntfs, fat32, ext3 (ffs), ฯลฯ ) ดูเหมือนว่าผู้ออกแบบระบบไฟล์สามารถเห็นด้วยกับแง่มุมที่ดีที่สุดของระบบแต่ละประเภทและใช้ระบบไฟล์ "ดีที่สุด" ไม่ใช่หรือ? เพียงความคิดเนื่องจากระบบไฟล์เหล่านี้มีมาระยะหนึ่งแล้วและอย่างน้อยก็ควรจะเห็นได้ชัดว่ามีคุณสมบัติที่ดีกว่าระบบอื่น ๆ และเราสามารถรวมสิ่งที่ดีในแต่ละระบบเข้าด้วยกันและสร้างระบบที่ดีที่สุด

4
เหตุใด Git .git / objects / โฟลเดอร์จึงถูกแบ่งย่อยในหลาย ๆ โฟลเดอร์ของ SHA-prefix
Git เก็บวัตถุ (Blobs, trees) ไว้ใน.git/objects/โฟลเดอร์ แต่ละวัตถุสามารถอ้างอิงได้โดยแฮช SHA1 ที่คำนวณจากเนื้อหาของวัตถุ อย่างไรก็ตามวัตถุจะไม่ถูกเก็บไว้ใน.git/objects/โฟลเดอร์โดยตรง แต่ละวัตถุจะถูกเก็บไว้ในโฟลเดอร์ที่ขึ้นต้นด้วยคำนำหน้าของแฮช SHA1 ดังนั้นวัตถุที่มีแฮชb7e23ec29af22b0b4e41da31e868d57226121c84จะถูกเก็บไว้ที่.git/objects/b7/e23ec29af22b0b4e41da31e868d57226121c84 เหตุใด Git จึงแบ่งการจัดเก็บวัตถุด้วยวิธีนี้ ทรัพยากรที่ฉันสามารถหาเช่นหน้า internals Git ของใน Git-SCM, เท่านั้นอธิบายวิธีการที่ไม่ว่าทำไม

1
ชื่อส่วนที่ไม่ใช่ส่วนขยายของชื่อไฟล์คืออะไร [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา กำหนดเส้นทางไฟล์: /some/path/abc.txt ชื่อไฟล์คือ "abc.txt" และนามสกุลเป็น "txt" "มาตรฐานอุตสาหกรรม" ชื่อที่ชัดเจนสำหรับส่วน "abc" คืออะไร? สำหรับการอ้างอิงทั้งในไลบรารีที่เก่าjava.ioและใหม่กว่าของ java ชื่อไฟล์หมายถึง "abc.txt" และไม่มีคำใด (เช่น API ไลบรารีไม่สนับสนุน) สำหรับส่วน "abc"java.nio

2
ระบบไฟล์“ ดู” อุปกรณ์เก็บข้อมูลเป็นอาร์เรย์ขนาดใหญ่มากหรือไม่?
ฉันต้องการทราบว่าระบบไฟล์เขียนและอ่านจากอุปกรณ์เก็บข้อมูลอย่างไร ฉันคิดว่านี่เป็นวิธีการทำงาน: ระบบไฟล์ไม่สามารถเข้าถึงอุปกรณ์จัดเก็บข้อมูลได้โดยตรง แต่จะแสดงอุปกรณ์เก็บข้อมูล (โดยไดรเวอร์อุปกรณ์ของอุปกรณ์เก็บข้อมูล) ไปยังระบบไฟล์ในรูปแบบอาร์เรย์ไบต์ (มีขนาดใหญ่มาก) ตัวอย่างเช่นหากระบบไฟล์ต้องการเข้าถึงฮาร์ดดิสก์ก็จะเข้าถึงอาร์เรย์ไบต์ที่เป็นตัวแทนของฮาร์ดดิสก์ วิธีนี้ระบบไฟล์สามารถทำงานกับอุปกรณ์เก็บข้อมูลชนิดใดก็ได้ (ฮาร์ดดิสก์แบบดั้งเดิม SSD, USB แฟลชไดรฟ์ ฯลฯ ) และมีการเปลี่ยนแปลงเฉพาะไดรเวอร์อุปกรณ์สำหรับอุปกรณ์เก็บข้อมูล ภาพนี้แสดงสิ่งที่ฉันเพิ่งอธิบาย: ฉันถูกต้องในการทำความเข้าใจของฉัน?

5
การแปลงพา ธ ของไฟล์ Windows เป็นพา ธ ของไฟล์ Unix นั้นปลอดภัยหรือไม่?
ตัวอย่างเช่นบอกว่าฉันมีมันเพื่อให้ไฟล์ทั้งหมดของฉันจะถูกถ่ายโอนจากเครื่อง windows ไปยังเครื่องยูนิกซ์เช่น: C:\test\myFile.txtไปที่{somewhere}/test/myFile.txt(ตัวอักษรไดรฟ์ไม่เกี่ยวข้องในจุดนี้) ขณะนี้ไลบรารียูทิลิตี้ของเราที่เราเขียนเองให้วิธีที่ง่าย ๆ ในการแทนที่แบ็กสแลชทั้งหมดด้วยสแลชสแลช: public String normalizePath(String path) { return path.replaceAll("\\", "/"); } เครื่องหมายทับถูกสงวนไว้และไม่สามารถเป็นส่วนหนึ่งของชื่อไฟล์ได้ดังนั้นโครงสร้างไดเรกทอรีควรถูกสงวนไว้ อย่างไรก็ตามฉันไม่แน่ใจว่ามีภาวะแทรกซ้อนอื่น ๆ ระหว่าง windows และเส้นทาง unix ที่ฉันอาจต้องกังวลเกี่ยวกับ (เช่น: ไม่ใช่ชื่อ ASCII ฯลฯ )

3
ตัวพิมพ์เล็กในชื่อไฟล์ Linux
เมื่อฉันพบว่า UpperCase นั้นสามารถอ่านได้สำหรับการแยกคำตัวอักษรแรกในชื่อที่ซับซ้อนยาว ๆ ฉันมักจะให้ชื่อไฟล์ Linux บางอันกับ UpperCase ส่วนใหญ่ executables บางไดเรกทอรีเกินไป แต่ไม่กี่สัปดาห์ที่ผ่านมาฉันได้ตั้งข้อสังเกตว่าส่วนใหญ่ของชื่อไฟล์ทั้งหมดใน linux distrib ของฉันนั้นเป็นตัวพิมพ์เล็ก ... ดังนั้นผมจึงทำบาง googling สักครู่ที่ผ่านมาและผมพบว่าบทความนี้: ลินุกซ์ชื่อไฟล์ที่รัฐหนึ่งควรเสมอใช้ตัวพิมพ์เล็กในโลกของยูนิกซ์ ... เป็นการดีที่สุดที่จะใช้ตัวพิมพ์เล็กใน Linux เสมอเว้นแต่คุณจะนึกถึงเหตุผลที่ดีในการใช้ตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก คน Unix ส่วนใหญ่ใช้ตัวพิมพ์เล็กเกือบเฉพาะ แต่นอกเหนือจากประเด็น "วัฒนธรรม" นี้แล้วยังมีอีกเหตุผลที่ดีในการใช้ตัวพิมพ์เล็ก หากคุณกำลังแชร์หรือเข้าถึงระบบไฟล์ DOS ด้วย Linux, DOS จะไม่สามารถดูไฟล์ที่มีชื่อไฟล์ตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็กผสมกันได้ ... เป็นอย่างนั้นจริงเหรอ?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.