มีวิธี จำกัด ขนาดของถังขยะหรือไม่?


12

ฉันเพิ่งเหลือพื้นที่ดิสก์เหลือเพียง 15GB ในถังขยะ มีวิธีที่จะไม่เก็บรายการเก่ากว่าพูด 7 วันหรือ จำกัด ขนาดของถังขยะหรือไม่?

ฉันต้องการวิธีจัดการการจัดการนี้โดยอัตโนมัติ

คำตอบ:


12

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

หากคุณต้องการวัดไฟล์ลบ "auto-magical" ที่เก่ากว่า 7 วันคุณสามารถใช้สคริปต์ทุบตีง่ายๆ:

find ~/.Trash -mtime +7 -exec /bin/rm -rf {} \;

empty_trash_older_than_7_days.shใช้โปรแกรมแก้ไขข้อความที่คุณชื่นชอบวางสายดังกล่าวข้างต้นเป็นไฟล์ใหม่แล้วบันทึกแฟ้มเป็น ในเทอร์มินัลอย่าลืมใช้chmodคำสั่งเพื่อทำให้สามารถเรียกใช้งานได้เช่น:chmod +x /path/to/empty_trash_older_than_7_days.sh

คำสั่งนี้เมื่อเรียกใช้งานในเทอร์มินัลจะค้นหาไฟล์ทั้งหมดในถังขยะของคุณ (ไฟล์จากโวลุ่มเริ่มต้นของคุณเท่านั้น - มากกว่านี้ในอีกหนึ่งนาที) ที่เก่ากว่า 7 วัน (นับจากเวลาที่คุณเรียกใช้คำสั่งนี้) แต่ละไฟล์ไปยังrm -rfคำสั่ง เนื่องจากrmเป็นคำสั่ง unix และไม่มีความคิดเกี่ยวกับถังขยะมันเพียง แต่ใช้ unix delete ซึ่งสำหรับวัตถุประสงค์ของเราคือการลบจริง (เช่นล้างถังขยะ)

จากนั้นคุณสามารถใช้ cron (หากคุณไม่คุ้นเคยกับ Cron ให้ตรวจสอบรายการ Cron ที่ดีใน wikipedia ) เพื่อตั้งค่าการเรียกใช้สคริปต์นี้ซ้ำ ๆ

โดยส่วนตัวแล้วการโหวตของฉันคือการฝึกฝนตัวเองให้ใช้Empty Trashรายการเมนูทุกสองสามนาทีวันสัปดาห์หรือไม่

PS ถ้า unix-ese ทั้งหมดนี้น่ากลัวเกินไปฉันจะพนันได้เลยว่ามีแอปพลิเคชั่น Mac ที่เรียบง่ายที่ผู้คนเขียนขึ้นเพื่อทำสิ่งนี้ หวังว่าใครบางคนที่มีความรู้เกี่ยวกับแอปพลิเคชั่นประเภทนี้มากกว่าหนึ่งแอพพลิเคชั่นจะสามารถตอบคำถามสองข้อได้ในฐานะตัวนับสมดุล

โชคดี!

PS ฉันลืมที่จะพูดคุยเกี่ยวกับปริมาณที่ไม่ได้เริ่มต้น ... ถ้าคุณลบไฟล์จากปริมาณOTHERกว่าปริมาณเริ่มต้นของคุณไฟล์นี้จะไปที่โฟลเดอร์. ถังขยะในปริมาณนั้น ตัวอย่างเช่นหากคุณมีชื่อโวลุ่มFooจะมีโฟลเดอร์/Volumes/Foo/.Trash. Trash ที่ สิ่งที่ฉันมีเอกสารด้านบนจะไม่ลบไฟล์เหล่านั้น คุณต้องตั้งค่าบางอย่างที่คล้ายกันสำหรับแต่ละวอลลุ่มที่คุณมี


2
OS X ก็findยังมีธงเพื่อให้คุณสามารถใช้-delete find ~/.Trash -mtime +7 -deleteวันที่แก้ไขไม่ได้เป็นตัวบ่งชี้ที่ดีมากเมื่อไฟล์ถูกลบ ฉันไม่ทราบวิธีการเข้าถึงวันที่ลบข้อมูลเมตาที่แสดงใน Finder
Lri

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

@ โจวี่เราสามารถใช้ -atime ซึ่งเป็นเวลาการเข้าถึงล่าสุด ยังมีปัญหาอื่นอีกซึ่งทำให้ไดเรกทอรีว่างในถังขยะ ...
ชื่อที่แสดง

3

สีน้ำตาลแดงสามารถกำหนดค่าให้เก็บไฟล์ได้ทั้งเวลาเท่านั้นและเพื่อให้ถังขยะมีขนาดเล็ก คุณสามารถเพิ่มกฎที่กำหนดเองสำหรับการลบไฟล์ขนาดใหญ่ทันทีหรือลบไฟล์ในโฟลเดอร์ถังขยะของไดรฟ์อื่น ๆ


0

จอห์น Wiegley เป็นdirscanโดยเฉพาะในตัวอย่างที่ถูกออกแบบมาเพื่อจัดการกับปัญหาที่ยึดติดกับวิธีการใช้cleanup.py มอบโซลูชันที่มีวัตถุประสงค์ทั่วไปเพิ่มเติมซึ่งคุณสามารถตั้งค่าเพื่อสแกน / ล้างไดเรกทอรีที่แตกต่างกันได้หลายวิธีfinddirscan

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