แบบแผนการตั้งชื่อไฟล์และไดเรกทอรี


21

ฉันต้องการ refactor ไฟล์และไดเรกทอรีในระบบของฉัน แต่ผมไม่แน่ใจว่าสิ่งที่เป็นวิธีที่ดีที่สุด

หลังจากอ่านคำถามนี้และคำตอบแล้วฉันถือว่าส่วนที่สำคัญที่สุดคือต้องสอดคล้องกัน อย่างไรก็ตามนี่คือที่ฉันติดอยู่ เช่นในรูทมีไดเรกทอรีเช่น/binและ/usrซึ่งทั้งหมดใช้ตัวอักษรพิมพ์เล็ก แต่ในไดเรกทอรีของผู้ใช้/home/foobar/มีอยู่แล้วพวงของไดเรกทอรีเช่น~/Pictures, ~/Documentsและ~/Music(ซึ่งเป็นตัวพิมพ์ใหญ่)!

อาจจะเป็นเพียงเพราะผมใช้อูบุนตู แต่สิ่งที่ถือว่าเป็นวิธีที่ดีที่สุด ?


7
คุณทำในระบบของคุณในสิ่งที่คุณต้องการ หากคุณต้องการเก็บคอลเลกชันสื่อลามกของคุณไว้ใน / boot ไม่มีใคร จำกัด เรื่องนั้น
Anton Barkovsky

2
FYI เมื่อคุณเริ่มต้นเส้นทางด้วย/ตามที่คุณมี/Picturesหมายความว่าเส้นทางเริ่มต้นที่ระดับราก (เช่นเส้นทางที่แน่นอน ) หากเส้นทางเริ่มต้นด้วย~จุดเริ่มต้นของมันคือไดเรกทอรีบ้าน (ไดเรกทอรีบ้านของคุณหากตามด้วย/หรือไม่มีเลยเลยถ้ามีคนอื่นตามด้วยชื่อผู้ใช้) ดังนั้นคุณควรเขียน~/Picturesให้หมายถึงไดเรคทอรีรูปภาพในโฮมไดเร็กตอรี่ของคุณ, หรือคุณควรจะเขียนPictures. หากคุณต้องการที่จะแสดงมันเป็นไดเรกทอรีทำตามมันด้วยเช่นเดียวกับใน/ Pictures/
Mike DeSimone

คำตอบ:


7

มีบางส่วนที่ขัดแย้งกันอยู่ที่นี่ ความคิดเห็นเกี่ยวกับความสามารถในการทำสิ่งที่คุณต้องการนั้นเป็นความจริง แต่มันจะทำให้คุณทำงานได้มากขึ้นในระยะยาว

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

ดังนั้นเราจึงลงสู่โฮมไดเร็กตอรี่ของคุณ

ก่อนอื่นให้จำไว้เมื่อคุณนึกถึงโครงสร้างที่สิทธิ์อนุญาตเป็นลำดับชั้น เพื่อให้ใครบางคนมีสิทธิ์ในโฟลเดอร์ที่กำหนดพวกเขาต้องมีสิทธิ์ดำเนินการอย่างน้อยในทุกโฟลเดอร์ข้างบนโฟลเดอร์นั้น หากคุณมีอะไรในโฮมไดเร็กตอรี่ที่คุณแชร์, มันจะต้องอยู่ใกล้ด้านบน (เช่น ~ / Music), สิ่งที่คุณต้องการ จำกัด ควรอยู่ในโฟลเดอร์ย่อยที่มีสิทธิ์ จำกัด (เช่น ~ / .ssh / id_rsa)

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


และฉันคิดว่าลีนุกซ์สามารถกำหนดค่าได้ตามที่คุณต้องการ ...
daGrevis

คุณยังต้องการสิทธิ์ดำเนินการในทุกโฟลเดอร์เหนือไดเรกทอรีหรือไม่หากคุณเข้าถึงไดเรกทอรีนั้นจาก softlink? นอกจากนี้ทำไมไม่สร้าง softlink จาก 'ดาวน์โหลด' ถึง 'ดาวน์โหลด' เพื่อเป็นการตอบสนองต่อประเด็นสุดท้ายของคุณในพฤติกรรมของ distro
deed02392

15

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

ภายในโฮมไดเร็กตอรี่ของคุณคุณสามารถทำสิ่งที่คุณต้องการได้มากโดยมีหนึ่งข้อยกเว้น: ไฟล์ดอทคือไฟล์ที่ชื่อขึ้นต้นด้วย.ในโฮมไดเร็กตอรี่ของคุณคือไฟล์คอนฟิเกอเรชันหรือไฟล์สถานะ ตัวอย่างเช่น bash จะอ่านตลอดเวลา~/.bashrcเมื่อเริ่มต้น (ยกเว้นเมื่อไม่มี แต่นั่นเป็นอีกเรื่องหนึ่ง) ดังนั้นคุณไม่ควรใช้ชื่อนั้นเพื่อจุดประสงค์อื่น

โครงการ Freedesktop ทำให้ซึ่งส่วนใหญ่จะเป็นพื้นดินทั่วไปสำหรับGnomeและKDEได้กำหนดไว้ไม่กี่ไดเรกทอรีมาตรฐานใน$HOME : Documents, Musicฯลฯ บางโปรแกรมจะสร้างไดเรกทอรีเหล่านี้ถ้าพวกเขาไม่อยู่และใช้พวกเขาเป็นสถานที่เริ่มต้น คุณสามารถเปลี่ยนชื่อของพวกเขาและในความเป็นจริงพวกเขาควรจะแปลเป็นภาษาของคุณ xdg-users-dirsองค์ประกอบซอฟต์แวร์ที่จัดการไดเรกทอรีเหล่านี้คือ ~/.config/user-dirs.dirsคุณสามารถเปลี่ยนชื่อไดเรกทอรีโดยการตั้งค่าที่แตกต่างกันใน


1

บน GNU / Linux มาตรฐานที่เกี่ยวข้องคือมาตรฐานระบบไฟล์ (FHS) อย่างไรก็ตามที่ไม่ครอบคลุมถึงการตั้งชื่อไดเรกทอรีภายในโฮมไดเรกทอรีผู้ใช้


เล่นลิ้น: ถ้าคุณทำPREFIX=$HOME ./configure; make; make installเพื่อสร้างสิ่งที่ไม่สิทธิ์รากคุณจะได้รับbin, lib, include, share, manฯลฯ ภายใต้$HOMEดังนั้นหากมีโอกาสที่คุณจะได้ทุกความต้องการของคุณจะทำอย่างนั้นคุณอาจรวมทั้งใช้ชื่อดั้งเดิมในสถานที่แรก
dmckee
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.