How to find package for installed file in Brew?
Just wrote this dirty function to get you the brew package name a file belongs to:
function brew_find_pkg {
file_to_search="$@"
for package in $(brew list); do
brew ls $package | grep -E -q "/${file_to_search}$"
if [ $? -eq 0 ]; then
echo $package
break
fi
done
}
Just type that in the terminal. And then to find to find the brew package a file belongs to, say the file gsed
, just call the function like this
brew_find_pkg gsed
Note that the function will not work if you provide the full path of the file.
To see all files in a package:
brew ls <package>
To find the package for a file, look at the file like this:
ls -l /usr/local/bin/whatever
If it was installed by Homebrew, it will be a symlink into /usr/local/Cellar/something
, so that will tell you what package it's from.