ฉันจะลบทุกสิ่งในไดเรกทอรีรวมถึงไฟล์และไดเรกทอรีที่ซ่อนอยู่ได้อย่างไร
ตอนนี้ฉันใช้สิ่งต่อไปนี้:
rm -rf *
rm -rf .*rm -rf yourdirectory/*
                ..ไดเรกทอรีซึ่งจะลบสิ่งที่อยู่ในไดเรกทอรีดังกล่าวข้างต้น 
                ฉันจะลบทุกสิ่งในไดเรกทอรีรวมถึงไฟล์และไดเรกทอรีที่ซ่อนอยู่ได้อย่างไร
ตอนนี้ฉันใช้สิ่งต่อไปนี้:
rm -rf *
rm -rf .*rm -rf yourdirectory/*
                ..ไดเรกทอรีซึ่งจะลบสิ่งที่อยู่ในไดเรกทอรีดังกล่าวข้างต้น 
                คำตอบ:
ง่ายและตรงไปตรงมา:
find -delete รวมถึงไดเรกทอรีและไฟล์ที่ซ่อนอยู่ อย่างน้อย gnu-find รู้-deleteของคุณfindอาจแตกต่างกัน
find /path -delete -mindepth 1เพื่อหลีกเลี่ยงการลบไดเรกทอรีการใช้งาน
                    คำตอบที่ดีที่สุดคืออย่าทำอย่างนั้น ลบไดเรกทอรีซ้ำซ้ำแล้วสร้างเป็นไดเรกทอรีว่าง มันน่าเชื่อถือและง่ายขึ้นสำหรับคนอื่นที่จะเข้าใจสิ่งที่คุณกำลังพยายามทำ เมื่อคุณสร้างไดเรกทอรีใหม่อาจมีเจ้าของกลุ่มและสิทธิ์ต่างกัน หากสิ่งเหล่านั้นสำคัญควรระวัง นอกจากนี้หากโปรแกรมใด ๆ ที่ทำงานอยู่มีตัวจัดการไฟล์เปิด (ตัวอธิบาย) ในไดเรกทอรีคุณจะไม่ต้องการลบมัน หากไม่ใช้กรณีพิเศษเหล่านั้นจะเป็นการง่ายกว่าที่จะลบไดเรกทอรีทั้งหมด
rm -rf -- * .[!.]* ..?*รูปแบบทั้งสามรูปแบบขยายออกไปหากมันไม่ตรงกับสิ่งใด แต่นั่นไม่ใช่ปัญหาที่นี่เนื่องจากเราต้องการจับคู่ทุกอย่างและrm -fละเว้นอาร์กิวเมนต์ที่ไม่มีอยู่
โปรดทราบว่าจะตรงกับ.*..
สมมติว่าทุบตี 4+:
shopt -s dotglob
rm -rf -- *
##or:
rm -rf ./*ด้วย dotglob เปิดใช้งาน*ขยายไฟล์และไดเรกทอรีทั้งหมดแม้กระทั่งผู้ที่เริ่มต้นด้วย.- แต่ไม่ได้ขยายตัวออกไป.และเพื่อให้มันมีความปลอดภัยที่จะใช้กับ..rm
หากคุณอยู่ในไดเรกทอรี:
cd .. && rm -rf dir && mkdir dir && cd dir
มิฉะนั้น:
rm -rf /path/to/dir && mkdir /path/to/dir
โอ้ฉัน Zsh
rm -rf (.|)*อีกครั้งสำหรับ Zsh เท่านั้น
*(D)(ตัวระบุแบบDกลมเปิดใช้glob_dotsตัวเลือกสำหรับรูปแบบนี้)
                    rm -rf {.,}*(แตกต่างจากทุบตี, zsh ไม่รวม.และ..เป็น{.,}*อย่างน้อยในเครื่องของฉัน)
                    findวิธีการเกี่ยวกับการใช้ ฉันคิดว่านี่เป็นทางเลือกที่ดีเมื่อคุณต้องขุดผ่านไดเรกทอรีย่อย
find . -type f -exec rm {} \;ลองrm -rf *?*ดู นี่จะเป็นการลบไฟล์ปกติและไฟล์ที่ซ่อนอยู่
*?*จะไม่ตรงกับไฟล์ "จุด" / dirs (ยกเว้นว่าคุณได้เปิดใช้งานdotglobตัวเลือกในbash , GLOB_DOTSตัวเลือกในzshหรือเทียบเท่ากับเชลล์ที่คุณใช้อยู่)
                    
rm -rf .* *คุณสามารถรวมพวกเขาไป