Unix 同时安装多个自制公式

Unix 同时安装多个自制公式,unix,homebrew,io-redirection,Unix,Homebrew,Io Redirection,您可以通过brew安装包1-package2安装多个自制公式。但是如果您有一个包含所有要安装的软件包的文本文件。你会怎么做 brew安装

您可以通过
brew安装包1-package2
安装多个自制公式。但是如果您有一个包含所有要安装的软件包的文本文件。你会怎么做

brew安装
不起作用。它给了我一个响应:
这个命令需要一个公式参数

如下:

brew install $(cat packages.txt)
甚至只是

brew install $(<packages.txt)
brew install$(以下是一个示例,它绕过了创建文件作为中间步骤的需要:

语法: vs


例子: 假设我想一次性安装我机器上目前没有的所有书呆子字体

brew搜索字体
将在结果中显示多行–类似于
ls
的默认输出:

brpro ➜ ~ brew search font
==> Partial Matches
birdfont                       font-hack-nerd-font
dfontsplitter                  font-hack-nerd-font-mono
font-3270 font-halant          font-noto-sans-tibetan
font-3270-nerd-font ✔          font-hammersmith-one
font-3270-nerd-font-mono ✔     font-han-nom-a
font-abeezee font-hanalei      font-noto-sans-vai
(...)
通过管道将输出传输到
grep-i nerd
会给出一个单行分隔的列表,其中只列出我们想要的水龙头

我们可以使用
tr
将此输出转换为以空格分隔的单行:

brpro ➜ ~ brew search font | grep nerd | tr '\n' ' '
font-3270-nerd-font font-3270-nerd-font-mono font-anonymouspro-nerd-font font-anonymouspro-nerd-font-mono (...)
现在,我们只需要将结果传递给
brew安装

brew install $( brew search font | grep nerd | tr '\n' ' ' )
管!作文!快乐


La voie Unix!

使用了Benjamin R的答案,遇到了一个问题,所以将此留给其他人

运行

brew install $( brew cask search font-nerd | grep font-nerd | tr '\n' ' ' )
第一次给我

Error: Calling `brew cask search` is disabled! Use `brew search` instead.
然后

因此,我不得不从搜索中删除
cask
,但像这样将其添加到安装中

brew cask install $( brew search font-nerd | grep font-nerd | tr '\n' ' ' )
它一次安装了所有的东西

您可能希望省略这些字体的mono版本,因为它们的图标尺寸较小

brew cask install $( brew search nerd-font | awk '/nerd-font/ && !/-mono$/' | tr '\n' ' ' )

干杯!下次请随意编辑我的答案,
brew-cask-search…
以前是有效的,但作为必要条件,他们删除了它。哦,对了。我只想添加一条评论,但我没有足够的声誉:)没有检查我是否可以编辑。
brew install $( brew cask search font-nerd | grep font-nerd | tr '\n' ' ' )
Error: Calling `brew cask search` is disabled! Use `brew search` instead.
Error: No available formula with the name "font-3270-nerd-font"
brew cask install $( brew search font-nerd | grep font-nerd | tr '\n' ' ' )
brew cask install $( brew search nerd-font | awk '/nerd-font/ && !/-mono$/' | tr '\n' ' ' )