ฉันจะลบแพ็กเกจ Homebrew ที่ล้าสมัยรุ่นที่ติดตั้งแล้วได้อย่างไร


216

ฉันจะลบแพ็กเกจHomebrew ที่ล้าสมัยที่ติดตั้งแบบเคียงข้างกันกับเวอร์ชันปัจจุบันได้อย่างไร


3
ตั้งแต่เวอร์ชั่น2.0.0 ล้างเกิดขึ้นโดยอัตโนมัติเว้นแต่คุณจะเลือกออก
— Katrin Leinweber

คำตอบ:


333

ทำความสะอาด ( brew cleanup) คำสั่งจะลบเก่ารุ่นที่ติดตั้งแพคเกจ ส่งผลกระทบต่อแพคเกจโดยเฉพาะอย่างยิ่ง / brew cleanup $FORMULAสูตรคุณอาจใส่ชื่อสูตรเช่นดังนั้น: เพื่อจำลองการทำความสะอาดคือเห็นสิ่งที่จะถูกลบออกคุณอาจจะใช้ตัวเลือก:-nbrew cleanup -n


30
สำหรับบันทึก: brew cleanupเพียง แต่ทำความสะอาดล้าสมัยรุ่นแพคเกจถ้าคุณมีรุ่นใหม่ล่าสุดติดตั้งเพื่อให้เป็นครั้งแรกbrew upgradeแล้วbrew cleanup
— ม.ค.

38
อึศักดิ์สิทธิ์ นั่นเพิ่งให้ฉันมากกว่า 3G กลับ ใครจะรู้ว่า ...
— Alper

38
This operation has freed approximately 17.2GB of disk space.
— fvgs

11
พระเจ้าช่วย! ฉันเพิ่งกลับมามากกว่า 12GB ของพื้นที่ WooHoo!
— Richard Hurt

3
ว้าวมูลค่าหนึ่งปีที่upgradeไม่มีcleanupซอฟต์แวร์ 17.6GB ที่ไม่ได้ใช้สำหรับฉัน! (ตรวจสอบด้วยbrew cleanup -nซึ่งไม่ได้ลบอะไรเลย) ขอบคุณสำหรับคำตอบนี้ :)
— เอริค

80

@ aknuds1 ถูกต้องเกี่ยวกับbrew cleanupดังนั้นฉันจะเพิ่มว่าฉันมีนามแฝงในของฉัน~/.profileที่จะล้างข้อมูลที่เกี่ยวข้องกับการชงของฉันทั้งหมดรวมถึงการปรับปรุง / ล้างถัง

alias brewski='brew update && brew upgrade && brew cleanup; brew doctor'

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


แก้ไข:ตามที่มันชี้ให้ฉันในความคิดเห็นbrew caskฟังก์ชั่นได้รับการรวมเป็นหลัก homebrew คำสั่งเหล่านี้ยังมีการโยนข้อผิดพลาดดังนั้นการอ้างอิงถึงbrew caskถูกลบไปแล้ว

แก้ไข 2:เมื่อฉันเรียกใช้ทุกวันฉันสังเกตเห็นความคิดเห็นต่อไปนี้วันนี้ ฉันได้อัปเดตคำสั่งตามนั้น

    Warning: We decided to not change the behaviour of `brew upgrade` so
    `brew upgrade --all` is equivalent to `brew upgrade` without any other
    arguments (so the `--all` is a no-op and can be removed).

3
คุณไม่จำเป็นต้องทำbrew upgrade brew-caskอีกต่อไปเนื่องจากคำขอการดึงนี้ brew updateจะอัปเกรด homebrew-cask โดยอัตโนมัติเช่นกัน
— Lantrix

1
@ Lantrix ขอบคุณสำหรับการปรับปรุง ฉันได้แก้ไขคำตอบเพื่อให้สอดคล้องกับการเปลี่ยนแปลงนี้
— SaxDaddy

2
brew upgrade --cleanupจะลบแพ็คเกจเก่าออกเมื่อติดตั้งแพ็คเกจใหม่
— Zenexer

ฉันไม่แนะนำให้ใช้brew upgradeแต่แทนที่จะใช้brew outdatedแล้วอัพเกรดแพ็คเกจแต่ละอันด้วยbrew upgrade PACKAGEวิธีการที่คุณสามารถควบคุมได้มากขึ้น
— Pedro Luz

ในฐานะที่brew upgradeเป็นคำสั่งเดียวที่จะอัพเกรดแพ็คเกจทั้งหมดมันทำงานได้ดีสำหรับระบบอัตโนมัติ คุณสามารถเลือกpinรุ่นแพ็คเกจที่คุณต้องการเก็บและอัพเกรดที่เหลือทั้งหมดในครั้งเดียว
— SaxDaddy

34

สำหรับระเบียนคุณสามารถล้างแพ็คเกจที่ล้าสมัยที่คุณกำลังจะอัพเกรดโดยใช้แฟล็ก --cleanup:

brew upgrade --cleanup <package_name>

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