อะไรคือความแตกต่างระหว่างไดเร็กทอรีและโฟลเดอร์?


114

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


สำหรับเหตุผลที่คำถามนี้เป็นของ SO และไม่ใช่การหลอกลวงโปรดดูที่meta.stackexchange.com/questions/79773/…
— mafu

แต่ยังมี programmers.stackexchange.com

คำตอบ:


96

ตรวจสอบ "อุปมาโฟลเดอร์" ที่วิกิพีเดีย มันระบุ:

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

หากมีการอ้างถึงคอนเทนเนอร์ของเอกสารคำว่าโฟลเดอร์จะเหมาะสมกว่า คำว่าไดเร็กทอรีหมายถึงวิธีการจัดเก็บรายการไฟล์เอกสารและโฟลเดอร์ที่มีโครงสร้างไว้ในคอมพิวเตอร์ ความแตกต่างอาจเกิดจากวิธีเข้าถึงไดเร็กทอรี บนระบบ Unix / usr / bin / มักเรียกว่าไดเร็กทอรีเมื่อดูในคอนโซลบรรทัดคำสั่ง แต่ถ้าเข้าถึงผ่านตัวจัดการไฟล์แบบกราฟิกผู้ใช้บางครั้งอาจเรียกมันว่าโฟลเดอร์


1
ฉันหมายถึงฉันนี่คือโดยพื้นฐานแล้วว่ามันเหมือนกันฮ่า ๆ
— Andrew

หมายเหตุทางประวัติศาสตร์: บรรทัดคำสั่ง UNIX, VAX / VMS และ MS-DOS เดิมใช้ "ไดเร็กทอรี" เท่านั้น Xerox Star ดั้งเดิมในปี 1970 ได้นำคำว่า "Folder" มาใช้เป็นส่วนหนึ่งของ "การอุปมาบนเดสก์ท็อป" ซึ่งเป็นที่นิยมใน Mac ปี 1980 และกลายเป็นสากลใน GUI ในเวลาต่อมารวมถึง Windows แต่ที่บรรทัดคำสั่งยังคงเป็น "ไดเรกทอรี"
— Orion Lawlor

44

โฟลเดอร์ไม่จำเป็นต้องเป็นไดเร็กทอรีฟิสิคัลบนดิสก์ อาจเป็นโฟลเดอร์เครื่องพิมพ์หรือโฟลเดอร์แผงควบคุมใน Windows

Raymond Chen อธิบายว่า:

Windows 95 เปิดตัว Windows Explorer และพร้อมกับโฟลเดอร์ระยะ ความสัมพันธ์ระหว่างโฟลเดอร์และไดเรกทอรีคืออะไร?

บางคนเชื่อว่า Windows 95 เปลี่ยนชื่อไดเรกทอรีเป็นโฟลเดอร์ แต่จริงๆแล้วมีมากกว่านั้น

Windows Explorer ให้คุณดูโฟลเดอร์ซึ่งเป็นคอนเทนเนอร์ในเนมสเปซเชลล์ ไดเร็กทอรีคือโฟลเดอร์ประเภทหนึ่ง ได้แก่ โฟลเดอร์ที่สอดคล้องกับตำแหน่งระบบไฟล์ มีโฟลเดอร์ประเภทอื่น ๆ เช่น Control Panel หรือ Network Neighborhood หรือ Printers โฟลเดอร์ประเภทอื่น ๆ เหล่านี้แสดงถึงออบเจ็กต์ในเนมสเปซเชลล์ซึ่งไม่สอดคล้องกับไฟล์ ในการใช้งานทั่วไปคำว่าโฟลเดอร์เสมือนถูกนำไปใช้เพื่ออ้างถึงโฟลเดอร์ที่ไม่ใช่ไดเร็กทอรี กล่าวอีกนัยหนึ่งเรามีแผนภาพออยเลอร์นี้:

(โฟลเดอร์เสมือน = โฟลเดอร์ - ไดเรกทอรี)

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


11
สำหรับ nitpicking โดยทั่วไป/procจะไม่อยู่ในดิสก์เช่นกัน
— n611x007

16

อ้างถึงÁlvaro G. Vicario :

เวลาส่วนใหญ่เป็นคำที่ใช้แทนกันได้ Directory เป็นคำคลาสสิกที่ใช้ตั้งแต่ยุคแรก ๆ ของระบบไฟล์ในขณะที่โฟลเดอร์เป็นชื่อที่เรียกง่ายซึ่งอาจฟังดูคุ้นเคยสำหรับผู้ใช้ Windows

ความแตกต่างที่สำคัญคือโฟลเดอร์เป็นแนวคิดเชิงตรรกะที่ไม่จำเป็นต้องแมปกับไดเร็กทอรีฟิสิคัล ไดเร็กทอรีคืออ็อบเจ็กต์ระบบไฟล์ โฟลเดอร์คือวัตถุ GUI Wikipedia อธิบายด้วยวิธีนี้ :

โฟลเดอร์ชื่อซึ่งนำเสนอการเปรียบเทียบกับโฟลเดอร์ไฟล์ที่ใช้ในสำนักงานและที่ Apple Lisa ใช้เดิมนั้นถูกใช้ในสภาพแวดล้อมเดสก์ท็อปของระบบปฏิบัติการสมัยใหม่เกือบทั้งหมด โฟลเดอร์มักจะแสดงด้วยไอคอนที่มีลักษณะคล้ายกับโฟลเดอร์ไฟล์ทางกายภาพ

พูดอย่างเคร่งครัดมีความแตกต่างระหว่างไดเร็กทอรีซึ่งเป็นแนวคิดของระบบไฟล์และคำอุปมาส่วนต่อประสานกราฟิกกับผู้ใช้ที่ใช้แทน (โฟลเดอร์) ตัวอย่างเช่น Microsoft Windows ใช้แนวคิดของโฟลเดอร์พิเศษเพื่อช่วยในการนำเสนอเนื้อหาของคอมพิวเตอร์แก่ผู้ใช้ด้วยวิธีที่ค่อนข้างสอดคล้องกันซึ่งช่วยให้ผู้ใช้ไม่ต้องจัดการกับพา ธ ไดเร็กทอรีแบบสัมบูรณ์ซึ่งอาจแตกต่างกันไประหว่างเวอร์ชันของ Windows และระหว่าง การติดตั้งแต่ละครั้ง

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


13
  • ไดเร็กทอรีเป็นแนวคิดระบบไฟล์ ใน GUI ไดเรกทอรีจะแสดงเป็นโฟลเดอร์
  • ตัวอย่างที่ 1:ระบบ Unix /usr/bin/มักเรียกว่าไดเร็กทอรีเมื่อดูในคอนโซลบรรทัดคำสั่ง แต่หากเข้าถึงผ่านโปรแกรมจัดการไฟล์แบบกราฟิกผู้ใช้บางครั้งอาจเรียกมันว่าโฟลเดอร์
  • ตัวอย่างที่ 2 : Windows ใช้ทั้งDirectory (ในคำสั่งเช่นmkdir, cd) และFolder (ใน GUI)

ไดเร็กทอรี : ไดเร็กทอรีชื่อแสดงถึงการเปรียบเทียบกับไดเร็กทอรีโทรศัพท์:

รูปภาพของสมุดโทรศัพท์


โฟลเดอร์ : โฟลเดอร์ชื่อแสดงถึงการเปรียบเทียบกับโฟลเดอร์ไฟล์ที่ใช้ในสำนักงาน:

รูปภาพของโฟลเดอร์สำนักงาน


การเปรียบเทียบ:

  • โฟลเดอร์เปรียบเสมือนห้อง
  • ไดเร็กทอรีเปรียบเสมือนผู้ดูแลโรงแรมที่รู้จักห้องทั้งหมด

หากคุณต้องการโฟลเดอร์เฉพาะคุณใช้ไดเร็กทอรี หากคุณต้องการห้องใดห้องหนึ่งคุณสามารถสอบถามผู้ดูแลโรงแรมได้ ที่มา


4

ฉันไม่ทราบความแตกต่างระหว่างสองคำนี้ในภาษาอังกฤษมาก่อนแม้แต่ในตัวแก้ไขรีจิสทรีของ Windows ฉันพบคีย์ย่อยสองคีย์FolderและDirectoryภายใต้HKEY_CLASSES_ROOT.

ฉันไม่รู้ความแตกต่างจนกว่าฉันจะสร้างค่าบางอย่างด้วยตนเองในรีจิสทรีและสังเกตเห็นความแตกต่างของรายการเมนูบริบท ถ้าฉันสร้างโหนดภายใต้HKEY_CLASSES_ROOT\Folder\shellเท่านั้นฉันพบว่ามันปรากฏในเมนูบริบทของทั้งโฟลเดอร์เสมือน (aka system directory) เช่นRecycle Binและไดเร็กทอรีระบบไฟล์เช่นC:\Windows.

ถ้าฉันสร้างโหนดภายใต้HKEY_CLASSES_ROOT\Directory\shellอย่างเดียวมันจะปรากฏในเมนูบริบทของไดเร็กทอรีระบบไฟล์เท่านั้นเช่นC:\Windowsแต่ไม่ใช่โฟลเดอร์เสมือน เช่นเดียวกับที่ @AntonyW กล่าวใน Windows โฟลเดอร์ = โฟลเดอร์เสมือน + ไดเร็กทอรีระบบไฟล์


1

ชื่อโฟลเดอร์ที่แสดงใน File Explorer (GUI เดิมเรียกว่า Windows Explorer) ไม่จำเป็นต้องเหมือนกับไดเรกทอรีที่แสดง ลองพิจารณากรณีที่คุณพยายามเปิดโฟลเดอร์ใดโฟลเดอร์หนึ่งโดยใช้โปรแกรมไดเร็กทอรีธรรมดาบนที่เก็บข้อมูลขนาดใหญ่ไม่ใช่ที่เก็บเสมือน สมมติว่าผู้ใช้ระบุสิ่งนี้ตามชื่อที่แสดงใน File Explorer ชื่อนี้อาจถูกแทนที่โดยข้อมูลในสตรีมข้อมูลทางเลือก (ADS) บนไดเร็กทอรีและโปรแกรมของคุณจะไม่อ้างถึงไฟล์ด้วยชื่อพา ธ ที่แท้จริง

ในสองตัวอย่างที่ฉันพบแอปของฉันไม่สามารถเปิดชื่อพา ธ ที่ผู้ใช้ระบุได้ หนึ่งในตัวอย่างเหล่านี้เกี่ยวข้องกับ OneDrive ฉันจำสถานการณ์ทั้งหมดของตัวอย่างอื่นไม่ได้ อย่างไรก็ตามชื่อที่แสดงจะถูกเก็บไว้ใน ADS ที่ชื่อว่าms-properties: $ DATA MS-คุณสมบัติ:

คุณสามารถใช้ CMD.EXE เพื่อแสดงรายการโฆษณาโดยใช้ DIR / R การเปลี่ยนชื่อโฟลเดอร์ดังกล่าวโดยใช้รายการเมนู Properties ใน File Explorer จะเปลี่ยนเนื้อหาของ ADS นี้และชื่อที่แสดงต่อผู้ใช้ปลายทางใน File Explorer คือสิ่งที่เขาหรือเธอพิมพ์ แต่ขั้นตอนนี้ไม่ได้เปลี่ยนชื่อไดเร็กทอรี


0

โดยพื้นฐานแล้วลิงก์ของคุณจะอธิบายสิ่งที่แตกต่างกันโดยอาศัยพื้นฐานทางเทคนิค เวลาส่วนใหญ่ผู้คนใช้สิ่งเหล่านี้แทนกันได้และสิ่งที่พวกเขาเลือกส่วนใหญ่จะขึ้นอยู่กับสภาพแวดล้อมที่พวกเขามา

เว้นแต่คุณจะทำการพัฒนาข้ามแพลตฟอร์มสำหรับแอปพลิเคชันที่จะแก้ไขไฟล์คุณไม่จำเป็นต้องทราบความแตกต่าง ทันทีที่คุณเตรียมทำงานกับระบบไฟล์ประเภทต่างๆคุณควรทราบถึงความแตกต่าง

อย่าคาดหวังว่าผู้คนจะรู้ว่าควรใช้คำศัพท์ใดเมื่อใด ฉันคิดว่าคำศัพท์เหล่านั้นเปลี่ยนกันได้เนื่องจากมีคนจำนวนน้อยเกินไป


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