#!/bin/bash # Source this and then run `cdf` # cd find (interactive): cd to the containing dir of a file, or inside a folder, given part of its name # Basically, an interactive version of what's above # can take an `fd` command # requires that `fzy` is installed cdf() { DIR="$(fd $@ | fzy)" if [ -f "$DIR" ];then cd "$(dirname "$DIR")" && pwd else cd "$DIR" && pwd fi }