mirror of
https://github.com/jbranchaud/til
synced 2026-01-03 07:08:01 +00:00
1.1 KiB
1.1 KiB
Search For Gem Versions Available To Install
The gem list
command combined with a few flags will produce a listing of all available
versions of that gem like so:
gem list rails --exact --remote --all
*** REMOTE GEMS ***
rails (7.1.0, 7.0.8, 7.0.7.2, 7.0.7.1, 7.0.7, ...)
I can then apply a bit of command-line transformation with sed and tr to
turn that list of version numbers into a list that can be nicely consumed by
other commands. In particular, I will pipe that list to fzf so that I can
fuzzy-search through the huge list for specific version matches.
$ gem list rails --exact --remote --all \
| sed -n 's/.*(\([^)]*\)).*/\1/p' \
| tr ',' '\n' \
| sed 's/^ //' \
| fzf
The first sed command captures everything inside the parentheses. The tr
command replaces the commas with new lines. And the second sed command
removes those leading space on each line.
Lastly, fzf provides a fuzzy-search
interface over the list of versions.