Bash tip of the day: ff
25 March 2011
This is helping me sooo much that it would a crime not to share it. It's actually nothing fancy, just a very convenient thing that I've learned to get used to.
ff is an executable script I use to find files in a
git repository. Goes like this:
$ ff list templates/operations/network-packing-list.html templates/sales/list_orders.html $ ff venue templates/venues/venues-by-special.html templates/venues/venues.html templatetags/venue_extras.py templatetags/venues_by_network_extras.py tests/test_venues.py
It makes it easy to super quickly search for added files without having to use the slow
find command which would also otherwise find backup files and other junk that isn't checked in.
To install it, create a file called
~/bin/ff and make it executable:
$ chmod +x ~/bin/ff
Then type this code in:
#!/usr/bin/python import sys, os args = sys.argv[1:] i = False if '-i' in args: i = True args.remove('-i') pattern = args[-1] extra_args = '' if len(args) > 1: extra_args = ' '.join(args[:-1]) param = i and "-i" or "" cmd = "git ls-files | grep %s %s '%s'" % (param, extra_args, pattern) os.system(cmd)