如何列出任何非依赖项的 gem(即,有点像 Homebrew 中的“brew leaves”)

How to list any gems that aren't dependencies (i.e., sort of like `brew leaves` in Homebrew)

我知道 gem dependency 是调查依赖图的一种方法,但我正在寻找更直接的方法。我只想列出不依赖于其他 gem 的 gem。

在 Homebrew 中,您可以使用 brew leaves 完成类似的操作 - 这会列出不依赖于其他包的包。我提到这一点,以防它有助于理解我想要完成的事情。

听起来您正在寻找 gem list 命令。

如果您正在寻找 gem 帮助,您可以 run gem --help.

我为此制作了一个小 shell 脚本:

#!/bin/sh

GEMS_FILE=`mktemp`
DEPENDENCIES_FILE=`mktemp`

gem list -l | sed 's/ (.*//' | sort > $GEMS_FILE
cat $GEMS_FILE | xargs -n1 gem dependency -l --pipe | sed 's/ --version.*//' | sort -u > $DEPENDENCIES_FILE
comm -23 $GEMS_FILE $DEPENDENCIES_FILE
rm -f $GEMS_FILE $DEPENDENCIES_FILE

同样是 Gist 形式:https://gist.github.com/astyagun/290b783045afffb8190a0c75ab76d0fa