你可以通过brew install package1 package2安装多个自制公式。但是如果你有一个文本文件,里面有你想安装的所有软件包。你会怎么做呢?brew install < packages.txt不起作用。它给出的响应是:This command requires a formula argument
brew install package1 package2
brew install < packages.txt
This command requires a formula argument
nwnhqdif1#
Like this:
brew install $(cat packages.txt)
or even just
brew install $(<packages.txt)
lf3rwulv2#
下面是一个alternative one-line approach,它不需要创建一个文件作为中间步骤:
brew install $( brew search my-search-term | grep my-filter-term | tr '\n' ' ' )
brew search x | grep y > install_list.txt brew install $( < install_list.txt )
brew search x | awk '/inclusion string/ && !/exclusion string/' | tr '\n' ' ' )
假设我想安装所有的书呆子字体目前没有在我的机器上一次去。brew search fonts将在结果中提供多行-类似于ls的默认输出:
brew search fonts
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,得到一个单行分隔的列表,其中只包含我们需要的 * tap *。
grep -i nerd
brpro ➜ ~ brew search font | grep -i nerd font-3270-nerd-font font-3270-nerd-font-mono font-anonymouspro-nerd-font font-anonymouspro-nerd-font-mono font-arimo-nerd-font font-arimo-nerd-font-mono font-aurulentsansmono-nerd-font (...)
我们可以使用tr将此输出转换为空格分隔的单行:
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 install:
brew install
brew install $( brew search font | grep nerd | tr '\n' ' ' )
管!作曲!快乐!
brvekthn3#
如果你没有设置做. txt文件,我会设置它使用\字符打破一个单行命令跨越多行,然后你可以复制和粘贴。简单、易于维护和扩展。示例:
\
brew install \ formulae1 \ formulae2 \ formulae3 \ ...
它将安装公式1、公式2、公式3等。
bvuwiixz4#
我认为值得一提的是,Brew有自己的文件格式来指定要安装的软件包列表:https://github.com/Homebrew/homebrew-bundle下面是一个很好的写了这个主题:https://medium.com/@satorusasozaki/automate-mac-os-x-configuration-by-using-brewfile-58a78ce5cc53
rhfm7lfc5#
使用了Benjamin R的答案,但遇到了问题,因此将其留给其他人。正在运行
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.
然后
Error: No available formula with the name "font-3270-nerd-font"
所以我不得不从搜索中删除cask,但将其添加到安装中,如下所示
cask
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' ' ' )
5条答案
按热度按时间nwnhqdif1#
Like this:
or even just
lf3rwulv2#
下面是一个alternative one-line approach,它不需要创建一个文件作为中间步骤:
语法:
示例:
假设我想安装所有的书呆子字体目前没有在我的机器上一次去。
brew search fonts
将在结果中提供多行-类似于ls
的默认输出:将输出通过管道传输到
grep -i nerd
,得到一个单行分隔的列表,其中只包含我们需要的 * tap *。我们可以使用
tr
将此输出转换为空格分隔的单行:现在我们只需要将结果传递给
brew install
:管!作曲!快乐!
brvekthn3#
如果你没有设置做. txt文件,我会设置它使用
\
字符打破一个单行命令跨越多行,然后你可以复制和粘贴。简单、易于维护和扩展。
示例:
它将安装公式1、公式2、公式3等。
bvuwiixz4#
我认为值得一提的是,Brew有自己的文件格式来指定要安装的软件包列表:https://github.com/Homebrew/homebrew-bundle
下面是一个很好的写了这个主题:https://medium.com/@satorusasozaki/automate-mac-os-x-configuration-by-using-brewfile-58a78ce5cc53
rhfm7lfc5#
使用了
Benjamin R
的答案,但遇到了问题,因此将其留给其他人。正在运行
第一次给了我
然后
所以我不得不从搜索中删除
cask
,但将其添加到安装中,如下所示而且它一次就安装好了所有东西。
您可能希望忽略这些字体的单色版本,因为它们的图标尺寸较小。