Skip to content

Instantly share code, notes, and snippets.

@idettman
Forked from 50kudos/flashflush.sh
Created July 22, 2017 23:37
Show Gist options
  • Save idettman/cb1b724abcb5d0d183eb4a4c7b40e6ed to your computer and use it in GitHub Desktop.
Save idettman/cb1b724abcb5d0d183eb4a4c7b40e6ed to your computer and use it in GitHub Desktop.
A Bash script that lists all unused css classes in html/haml/erb files for rails project (or maybe others depending on project structure)
#!/bin/bash
cat $(find app/assets/stylesheets/ -type f) |
grep -Eo '\.[a-z]+[a-z0-9_-]*' | sort | uniq | sed s/.// |
while read CSS; do
if ! grep -Erqi "([^(remove|has)]?class[(:|=|[:space:]*=>[:space:]*)]*[[:space:]\W]*[(\"|')]*[-a-z0-9[:space:]]*$CSS|\\.$CSS\b)" app/views/ vendor/assets/ app/assets/javascripts/; then
echo $CSS >> unused.scss;
fi
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment