rm -rf * จะลบไฟล์และโฟลเดอร์ทั้งหมด แต่จะไม่ถูกซ่อน
rm -rf .* จะลบไฟล์และโฟลเดอร์ที่ซ่อนทั้งหมด แต่ไม่ใช่ไฟล์ที่ไม่ถูกซ่อนถูกต้องหรือไม่
คำสั่งประเภทใดที่ควรลบไฟล์และโฟลเดอร์ทั้งหมดรวมถึงไฟล์ที่ซ่อนอยู่? (ยกเว้น. และ .. ); ?
rm -rf * จะลบไฟล์และโฟลเดอร์ทั้งหมด แต่จะไม่ถูกซ่อน
rm -rf .* จะลบไฟล์และโฟลเดอร์ที่ซ่อนทั้งหมด แต่ไม่ใช่ไฟล์ที่ไม่ถูกซ่อนถูกต้องหรือไม่
คำสั่งประเภทใดที่ควรลบไฟล์และโฟลเดอร์ทั้งหมดรวมถึงไฟล์ที่ซ่อนอยู่? (ยกเว้น. และ .. ); ?
คำตอบ:
rm -rf * .*
จะทำเคล็ดลับ
findกับ-deleteธง ...
rmควรพิมพ์rm: "." and ".." may not be removedข้อความในกรณีนั้น - มันจะไม่ลบไดเรกทอรีหลักโดยอัตโนมัติ
ลองสิ่งนี้:
find . -mindepth 1 -delete
ฉันไม่แน่ใจว่า-mindepthได้รับการสนับสนุนจากการใช้งานทั้งหมดของfind; หากคุณไม่มีมัน-pathควรให้วิธีอื่นในการป้องกันไม่ให้พยายามลบ.:
find . -path "*/*" -delete
findก็มีตัวเลือกเช่นกัน yup
เพียงใช้คำสั่งนี้เพื่อกำจัดไฟล์ / ไดเรกทอรีตามเกณฑ์เฉพาะ:
# tmpwatch -fauv 0 .
shopt -s dotglobยังทำให้*รวมไฟล์ที่ขึ้นต้นด้วยจุด
.*จะขยายไปยังรายการที่มองไม่เห็นทั้งหมดในไดเรกทอรีปัจจุบันรวมถึง..- ซึ่งหมายความว่าการใช้.*เป็นอาร์กิวเมนต์เพื่อrm -rfจะพยายามลบไดเรกทอรีด้านบนไดเรกทอรีที่คุณอยู่ในปัจจุบันและเนื้อหาทั้งหมด rm จะปฏิเสธที่จะทำ แต่ฉันไม่คิดที่จะใช้ความปลอดภัยนี้ ...