काढ़ा: पैकेज के पुराने संस्करण को कैसे हटाएं


15

Homebrew खुद को काढ़ा करने के लिए उन्नयन । और ऐसा लग रहा है कि अनुरक्षकों ने दैनिक उपयोग की कुछ आज्ञाओं को लागू नहीं किया है brew cleanup

तो किसी को पता है कि सॉफ्टवेयर के पुराने संस्करण को स्वचालित रूप से कैसे हटाया जाए?

$ brew
Example usage:
  brew search [TEXT|/REGEX/]
  brew (info|home|options) [FORMULA...]
  brew install FORMULA...
  brew update
  brew upgrade [FORMULA...]
  brew uninstall FORMULA...
  brew list [FORMULA...]

Troubleshooting:
  brew config
  brew doctor
  brew install -vd FORMULA

Brewing:
  brew create [URL [--no-fetch]]
  brew edit [FORMULA...]
  https://github.com/Homebrew/brew/blob/master/share/doc/homebrew/Formula-Cookbook.md

Further help:
  man brew
  brew help [COMMAND]
  brew home

2
मुझे पूरा यकीन है कि यह सिर्फ है brew clean
At0mic

जवाबों:


27

जो कमांड आप चाहते हैं वह है cleanup- रनिंग brew cleanupउन पैकेजों को हटा देगा जो डिस्क पर हैं, लेकिन अब इंस्टॉल नहीं किए गए हैं।

> brew help cleanup
brew cleanup [--prune=days] [--dry-run] [-s] [formulae]:
    For all installed or specific formulae, remove any older versions from the
    cellar. In addition, old downloads from the Homebrew download-cache are deleted.

    If --prune=days is specified, remove all cache files older than days.

    If --dry-run or -n is passed, show what would be removed, but do not
    actually remove anything.

    If -s is passed, scrubs the cache, removing downloads for even the latest
    versions of formulae. Note downloads for any installed formulae will still not be
    deleted. If you want to delete those too: rm -rf $(brew --cache)

उदाहरण के लिए:

> brew cleanup
Removing: /usr/local/Cellar/awscli/1.10.19... (2,955 files, 22.3M)
Removing: /usr/local/Cellar/git/2.8.2... (1,418 files, 30.5M)
Removing: /usr/local/Cellar/imagemagick/6.9.3-7... (1,459 files, 17.9M)
Removing: /usr/local/Cellar/libgcrypt/1.7.0... (17 files, 1.5M)
Removing: /usr/local/Cellar/libgpg-error/1.21... (19 files, 419.4K)
Removing: /usr/local/Cellar/libksba/1.3.3... (13 files, 343K)
Removing: /usr/local/Cellar/mercurial/3.7.3... (386 files, 4.7M)
Removing: /usr/local/Cellar/node/6.0.0... (3,655 files, 38.8M)
Removing: /usr/local/Cellar/openssl/1.0.2g... (1,678 files, 12.0M)
Removing: /usr/local/Cellar/vim/7.4.1795... (1,687 files, 22.6M)
Removing: /Library/Caches/Homebrew/git-2.8.2.el_capitan.bottle.tar.gz... (11.2M)
Removing: /Library/Caches/Homebrew/imagemagick-6.9.3-7.el_capitan.bottle.tar.gz... (7M)
Removing: /Library/Caches/Homebrew/libgcrypt-1.7.0.el_capitan.bottle.tar.gz... (565.4K)
Removing: /Library/Caches/Homebrew/libgpg-error-1.21.el_capitan.bottle.tar.gz... (130.8K)
Removing: /Library/Caches/Homebrew/libksba-1.3.3.el_capitan.bottle.tar.gz... (126.6K)
Removing: /Library/Caches/Homebrew/node-6.0.0.el_capitan.bottle.tar.gz... (10.9M)
Removing: /Library/Caches/Homebrew/openssl-1.0.2g.el_capitan.bottle.tar.gz... (3.6M)
Removing: /Library/Caches/Homebrew/vim-7.4.1795.tar.gz... (12.0M)
==> This operation has freed approximately 196.4M of disk space.

मेरे पास सोमवार की सुबह है:

brew update
brew upgrade
brew cleanup

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


1

एक उत्तर के लिए नहीं, लेकिन एक टिप्पणी के लिए बहुत लंबा है, यह वह कोड है जो मैं अपने शराब की भठ्ठी को बनाए रखने के लिए एक शासन के रूप में उपयोग करता हूं:

    fullBrewUpdate(){
            brew update
            brew cask update

            casks=( $(brew cask list) )

            for cask in ${casks[@]}
            do
                # in the first line there is version
                    current="$(brew cask info $cask | sed -n '1p' | sed -n 's/^.*: \(.*\)$/\1/p')"

                    installed=( $(ls /opt/homebrew-cask/Caskroom/$cask))
                    if (! [[ " ${installed[@]} " == *" $current "* ]]); then
                            (set -x; brew cask install $cask --force;)
                    fi
            done

            brew upgrade
            brew cleanup
    }

मेरे पास इसे सहेजा गया है ~/.bash_profileइसलिए मैं इसे टर्मिनल से मक्खी पर फ़ंक्शन नाम के रूप में कह सकता हूं।


1
कम से कम काढ़ा संस्करण 1.5.12 के रूप में, brew cask updateअक्षम है। Error: Calling 'brew cask update' is disabled! Use 'brew update' instead.
डॉटनेट कारपेंटर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.