मैं Homebrew संकुल के पुराने स्थापित संस्करणों को कैसे हटा सकता हूँ?


216

मैं Homebrew पैकेज के पुराने संस्करणों को कैसे हटा सकता हूं जो वर्तमान संस्करणों के साथ-साथ स्थापित हैं?


जवाबों:


333

सफाई ( brew cleanup) आदेश पुरानी स्थापित पैकेज संस्करणों को हटा देगा। किसी विशेष पैकेज / सूत्र को प्रभावित करने के लिए, आप एक सूत्र नाम की आपूर्ति कर सकते हैं जैसे brew cleanup $FORMULA:। सफाई का अनुकरण करने के लिए, अर्थात देखें कि क्या हटाया जाएगा, आप -nविकल्प का उपयोग कर सकते हैं brew cleanup -n:।


30
रिकॉर्ड के लिए: brew cleanupकेवल पैकेज संस्करण पुराना है, तो आप नवीनतम संस्करण स्थापित किया है, इसलिए पहले साफ brew upgradeतोbrew cleanup
जनवरी

38
बकवास। बस मुझे 3 जी से अधिक वापस दे दिया। कौन जानता था ...
अल्पर

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

11
हे भगवान! मैंने अभी 12GB से अधिक जगह वापस ली है। वू हू!
रिचर्ड हर्ट

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कार्यक्षमता को होमब्रेव कोर में मिला दिया गया है। ये आदेश त्रुटियां भी दे रहे थे, इसलिए संदर्भ brew caskहटा दिए गए हैं।

EDIT2: जैसा कि मैंने इसे दैनिक रूप से चलाया, मैंने आज निम्नलिखित टिप्पणी पर ध्यान दिया। मैंने उसी के अनुसार कमांड को अपडेट किया है

    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 को स्वचालित रूप से अपग्रेड करेगा।
लैंट्रिक्स

1
@ लैंट्रिक्स उस अपडेट के लिए धन्यवाद। मैंने इस परिवर्तन को दर्शाने के लिए अपना उत्तर संपादित किया है।
सक्सैडडी

2
brew upgrade --cleanupपुराने पैकेज हटाए जाएंगे क्योंकि नए पैकेज इंस्टॉल किए जाते हैं।
Zenexer

मैं उपयोग करने के brew upgradeबजाय उपयोग करने की सलाह नहीं देता brew outdatedऔर फिर किसी एक पैकेज को अपग्रेड brew upgrade PACKAGEकर सकता हूं जिस तरह से आपके पास अधिक नियंत्रण है
पेड्रो लूज

जैसा कि brew upgradeसभी पैकेजों को अपग्रेड करने के लिए एकल कमांड है, यह स्वचालन के लिए अच्छी तरह से काम करता है। वैकल्पिक रूप से, आप उन pinसंस्करणों को पैकेज कर सकते हैं, जिन्हें आप एक बार में शेष रखना और अपग्रेड करना चाहते हैं।
सक्सैडडी

34

सिर्फ रिकॉर्ड के लिए, आप उन संकुल के पुराने संस्करणों को साफ कर सकते हैं जिन्हें आप --cleanup ध्वज का उपयोग करके अपग्रेड करने वाले हैं:

brew upgrade --cleanup <package_name>

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.