自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Homebrew :在Mac上無(wú)痛安裝軟件

系統(tǒng)
Homebrew 軟件包管理器可以讓你輕松地在 Mac 上安裝和更新應(yīng)用程序和實(shí)用程序。

[[330966]]

Homebrew 軟件包管理器可以讓你輕松地在 Mac 上安裝和更新應(yīng)用程序和實(shí)用程序。

在我追求“萬(wàn)物自動(dòng)化”的過(guò)程中,我一直堅(jiān)持走在用代碼來(lái)管理我的 Mac 筆記本電腦的路上。與其用鼠標(biāo)或觸控板手動(dòng)管理我的應(yīng)用程序和實(shí)用程序,我更喜歡使用軟件包管理軟件來(lái)安裝、更新和刪除不需要的軟件。

這對(duì) Mac 用戶來(lái)說(shuō)是個(gè)挑戰(zhàn)。Mac 的操作系統(tǒng) macOS 始終落后于 Linux 的一個(gè)地方就是在包管理方面。Mac 用戶沒(méi)有默認(rèn)的軟件包管理器,而 Linux 用戶則有很多選擇 —— 從熟悉的 yum 和 apt 到現(xiàn)代的 Flatpak。但 Mac 呢?

這就是 Homebrew 的作用。Homebrew(自釀)填補(bǔ)了 MacOS 事實(shí)上的軟件包管理器的空白(它也是 Linux 上的又一個(gè)可選的包管理器)。它為任何熟悉命令行的人提供了令人難以置信的流暢而直接的體驗(yàn),如果你是新手,它是學(xué)習(xí)命令行的好方法。

(LCTT 譯注:Homebrew 系統(tǒng)中采用了大量針對(duì)自釀啤酒相關(guān)的比喻,大家在使用過(guò)程中會(huì)發(fā)現(xiàn)這些有趣的形容。)

如果你在 Mac 上還沒(méi)有 Homebrew,你可以這樣來(lái)安裝:

  1. $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

該命令將執(zhí)行 Homebrew 團(tuán)隊(duì)提供的安裝程序腳本。如果你喜歡謹(jǐn)慎一點(diǎn),可以 curl 下來(lái)這個(gè)文件,審核后再手動(dòng)運(yùn)行。

  1. $ curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh --output homebrew_installer.sh
  2. $ more homebrew_installer.sh # 審核該腳本,直到你覺(jué)得沒(méi)問(wèn)題了
  3. $ bash homebrew_installer.sh

使用“釀造”來(lái)管理你的命令行實(shí)用程序

Homebrew 號(hào)稱它“可以安裝蘋(píng)果(或你的 Linux 系統(tǒng))默認(rèn)沒(méi)有安裝的必需之物”。安裝是通過(guò) brew(釀造)命令進(jìn)行的,它使我們能夠訪問(wèn)成千上萬(wàn)的命令行實(shí)用程序,但不是更復(fù)雜的應(yīng)用程序。

對(duì)于我們這些搞技術(shù)的人來(lái)說(shuō),符合“必需之物”類(lèi)別的實(shí)用工具包括顯示目錄結(jié)構(gòu)的方便的 tree 命令和我用來(lái) 管理多個(gè) Python 版本 的 pyenv。

你可以用 search 子命令看到 Homebrew 中所有的“秘方formula”,我用 wc 命令顯示有多少個(gè)“秘方”。

  1. # -l 統(tǒng)計(jì)行數(shù)
  2. $ brew search | wc -l
  3.     5013

有 5000 多個(gè)“秘方”,這是一個(gè)不可思議的軟件數(shù)量。所以,在搜索那個(gè)龐大的清單之前,最好先對(duì)自己想要的東西有個(gè)概念。值得慶幸的是,瀏覽起來(lái)很方便。“秘方”被編入并集中存儲(chǔ)到核心庫(kù)中,核心庫(kù)按操作系統(tǒng)劃分(Mac 在 Homebrew Core,Linux 在 Linux Core)。它們也可以通過(guò) Homebrew API 和網(wǎng)站列出。

口碑是另一個(gè)尋找實(shí)用工具的好方法??紤]到這一點(diǎn),如果你正在尋找靈感,這里有一些我的最?lèi)?ài):

  • pyenv、rbenv 和 nodenv 分別用于管理 Python、Ruby 和 Node.js 的版本
  • imagemagick 用于可腳本化的圖像編輯
  • pandoc 用于可腳本化的文件轉(zhuǎn)換(我經(jīng)常從 .docx 切換到 .md 或 .html)
  • hub 為 GitHub 用戶提供了更好的 Git 體驗(yàn)
  • tldr 提供了解如何使用命令行工具的例子

舉個(gè)例子,看看 tldr 頁(yè)面,這是一個(gè)用戶友好的替代方式,可以滾動(dòng)瀏覽應(yīng)用程序的手冊(cè)頁(yè)。你可以通過(guò)再次運(yùn)行 search 來(lái)確認(rèn)它是否可用:

  1. $ brew search tldr
  2. ==> Formulae
  3. tldr

成功了!這個(gè)對(duì)勾讓你知道它是可用的?,F(xiàn)在你可以安裝它了:

  1. $ brew install tldr
  2. ==> Downloading https://homebrew.bintray.com/bottles/tldr-1.3.0_2.catalina.bottle.tar.gz
  3. Already downloaded: /Users/mbbroberg/Library/Caches/Homebrew/downloads/901bc14594a9283e9ab20aec942dc5a9a2befb7e96e1b0fcccb4e3257918813c--tldr-1.3.0_2.catalina.bottle.tar.gz
  4. ==> Installing tldr
  5. ==> Pouring tldr-1.3.0_2.catalina.bottle.tar.gz
  6. 🍺 /usr/local/Cellar/tldr/1.3.0_2: 6 files, 35.5KB

值得慶幸的是,Homebrew 預(yù)先構(gòu)建了二進(jìn)制文件,所以你不必在本地機(jī)器上從源代碼構(gòu)建。這樣就節(jié)省了很多時(shí)間,并免除了 CPU 風(fēng)扇的噪音。我對(duì) Homebrew 贊賞的另一件事是,你可以在不完全了解其含義的情況下欣賞此功能。

但如果你喜歡,看看復(fù)雜的東西也是很有趣的。對(duì) tldr 運(yùn)行 info 子命令,你可以看到所有的依賴管理、源代碼,甚至公共分析。

  1. $ brew info tldr
  2. tldr: stable 1.3.0 (bottled), HEAD
  3. Simplified and community-driven man pages
  4. https://tldr.sh/
  5. Conflicts with:
  6. tealdeer (because both install `tldr` binaries)
  7. /usr/local/Cellar/tldr/1.3.0_2 (6 files, 35.5KB) *
  8. Poured from bottle on 2020-05-20 at 15:12:12
  9. From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/tldr.rb
  10. ==> Dependencies
  11. Build: pkg-config
  12. Required: libzip
  13. ==> Options
  14. --HEAD
  15. Install HEAD version
  16. ==> Analytics
  17. install: 2,811 (30 days), 7,875 (90 days), 27,105 (365 days)
  18. install-on-request: 2,806 (30 days), 7,860 (90 days), 27,080 (365 days)
  19. build-error: 0 (30 days)

最后,和其他優(yōu)秀的軟件包管理器一樣,Homebrew 的 brew uninstall 子命令可用于快速清理和刪除未使用的實(shí)用程序。

用“酒桶”管理你的應(yīng)用程序

命令行實(shí)用程序是一匹孤狼,但完整的應(yīng)用程序呢?Homebrew 保持了其標(biāo)準(zhǔn)命令的簡(jiǎn)單性,只通過(guò)其默認(rèn)的 brew 命令行界面安裝單文件應(yīng)用。而應(yīng)用程序不符合這種結(jié)構(gòu)。它們的目錄層次比較復(fù)雜,比單一的二進(jìn)制要復(fù)雜得多。

幸運(yùn)的是,Mac 上的 Homebrew 包含了一個(gè)名為 cask(酒桶)的子命令,用于處理更復(fù)雜的多目錄結(jié)構(gòu)。特別好的是,cask 使用了與標(biāo)準(zhǔn) brew 命令類(lèi)似的命令結(jié)構(gòu),所以你可以使用類(lèi)似的 search、install 和 info 子命令:

  1. brew search --cask | wc -l
  2.     4772

哇,有近 5000 個(gè)應(yīng)用程序,在 Homebrew 的網(wǎng)站上瀏覽更方便。

我將用我新喜歡的一款應(yīng)用來(lái)引導(dǎo)你完成 cask。Meld(我在 Opensource.com 上讀到的)。這是一個(gè)功能豐富的編輯器,可以幫助管理合并沖突。在它的網(wǎng)站上有下載的鏈接,我可以運(yùn)行安裝程序,并將其拖放到我的應(yīng)用程序文件夾中。但我不想再這樣做了,我用的是 Homebrew。

首先,我可以通過(guò)稍微不同的語(yǔ)法確認(rèn)它可以使用:

  1. $ brew search --casks meld
  2. ==> Casks
  3. meld

然后我使用 cask 子命令來(lái)安裝它:

  1. $ brew cask install meld
  2. ==> Downloading https://github.com/yousseb/meld/releases/download/osx-19/meldmerge.dmg
  3. ==> Downloading from https://github-production-release-asset-2e65be.s3.amazonaws.com/28624006/66cb25
  4. ######################################################################## 100.0%
  5. ==> Verifying SHA-256 checksum for Cask 'meld'.
  6. ==> Installing Cask meld
  7. ==> Moving App 'Meld.app' to '/Applications/Meld.app'.
  8. ==> Linking Binary 'meld.wrapper.sh' to '/usr/local/bin/meld'.
  9. 🍺 meld was successfully installed!

Homebrew 不僅安裝了應(yīng)用程序,而且還在我當(dāng)前的路徑 /usr/local/bin/ 下提供了它?,F(xiàn)在,我可以從命令行運(yùn)行 meld 或從應(yīng)用程序文件夾中啟動(dòng)應(yīng)用程序。

更新一切的“釀造升級(jí)”

我一直使用軟件包管理器的主要原因是,我可以不斷升級(jí)我的軟件,以避免已知的安全漏洞,并確保我總是有最新的功能。如果我手工安裝所有的東西,我必須關(guān)注每一個(gè)工具和應(yīng)用程序,以了解它是否有自動(dòng)更新程序,如果沒(méi)有,就得自己拉回最新的版本。

升級(jí)功能是優(yōu)秀的軟件包管理的閃光點(diǎn)。由于我沒(méi)有什么特殊的版本要求,所以我只需要運(yùn)行一個(gè)命令就可以順利更新一切:

  1. $ brew upgrade
  2. ==> Upgrading 6 outdated packages:
  3. helm 3.2.1 -> 3.2.2
  4. python@3.8 3.8.2_4 -> 3.8.3
  5. ipython 7.14.0 -> 7.15.0
  6. go 1.14.2_1 -> 1.14.3
  7. libzip 1.6.1 -> 1.6.1_1
  8. sqlite 3.31.1 -> 3.32.1

如果你有更復(fù)雜的需求,或者想在安裝升級(jí)前關(guān)注一下升級(jí)情況,有很多功能標(biāo)志可供選擇。例如,-n 提供了一個(gè) “模擬運(yùn)行”,列出了可用的升級(jí),而不會(huì)進(jìn)行安裝。你也可以 “” 住應(yīng)用程序版本來(lái)防止它升級(jí)。

備份你的安裝

當(dāng)該工具允許你像其它點(diǎn)文件的版本控制方案一樣備份你的安裝環(huán)境時(shí),命令行實(shí)用程序和應(yīng)用程序的管理就跳到了一個(gè)全新的水平。Homebrew 就有這樣的功能,可以在 dump 子命令下使用。它會(huì)生成一個(gè) Brewfile,這是一個(gè)可重復(fù)使用的當(dāng)前所有安裝的工具的列表。要從你的安裝的環(huán)境中生成一個(gè),進(jìn)入你的合適的文件夾并運(yùn)行:

  1. $ cd ~/Development/dotfiles # 這是我的點(diǎn)文件的文件夾
  2. $ brew bundle dump

當(dāng)我換了機(jī)器,想用 Homebrew 安裝相同的應(yīng)用程序時(shí),我就會(huì)進(jìn)入裝有 Brewfile 的文件夾并運(yùn)行。

  1. $ brew bundle

它將在我的新機(jī)器上安裝所有列出的“秘方”和“酒桶”。

用 Homebrew 進(jìn)行軟件包管理

Homebrew 是我常用的命令行工具和應(yīng)用程序的管理器。它可以讓我保持有條理和及時(shí)更新,它的設(shè)計(jì)在易用性和功能深度之間取得了美麗的平衡。Homebrew 將軟件包管理的細(xì)節(jié)最小化到只需要你知道的程度,大多數(shù)用戶都會(huì)從中受益。

如果你對(duì) Linux 軟件包管理器已經(jīng)駕輕就熟,你可能會(huì)認(rèn)為 Homebrew 太簡(jiǎn)單了,但不要誤以為 Homebrew 的易用性是功能的缺乏。稍微深入一點(diǎn)看,就會(huì)發(fā)現(xiàn)很多高級(jí)選項(xiàng),遠(yuǎn)遠(yuǎn)超出了我在這里向你展示的范圍。將 -h 添加到任何 brew 子命令中,會(huì)顯示可用來(lái)升級(jí)、刪除、故障排除,甚至使用模板貢獻(xiàn)新 “秘方” 的豐富功能。

總的來(lái)說(shuō),Homebrew 可以讓一個(gè)重度命令行的 Mac 用戶變得很開(kāi)心。此外,它是開(kāi)源的,所以如果你愿意,你可以貢獻(xiàn)代碼。嘗試一下它,讓我知道你的想法,在下面留下評(píng)論。

 

責(zé)任編輯:龐桂玉 來(lái)源: Linux中國(guó)
相關(guān)推薦

2021-03-22 16:39:12

惡意軟件XcodeMac

2021-12-09 09:27:22

MacOSHomebrew包管理器

2020-07-13 07:30:12

Linux提取文件腳本

2012-11-09 09:35:18

Win 8

2012-10-31 09:51:05

Mac OS XLua編程

2022-03-21 21:28:00

Homebrew包管理器Linux

2021-11-29 14:26:53

FreeDOSLinux

2022-02-25 11:39:23

Linux軟件

2012-11-23 14:33:06

IBMdW

2021-02-07 19:18:23

MacOSM1 Mac蘋(píng)果

2020-07-08 15:29:05

MacJava編程語(yǔ)言

2021-09-15 08:00:00

Windows 11Windows微軟

2023-09-27 17:41:59

WindowsVirtualBox

2022-06-16 10:46:43

UbuntuLinux

2023-09-24 19:24:18

UbuntuVSCodium

2022-03-09 09:35:07

GoogleChrome 99Safari

2020-06-28 16:07:03

HomebrewMacLinux

2009-04-15 20:52:37

Linux設(shè)置IPMAC綁定

2011-03-03 13:46:00

NTFS-3G

2012-09-19 14:40:35

Worklight
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)