20 lines
421 B
Bash
20 lines
421 B
Bash
#!/bin/bash
|
|
|
|
# cd search: cd to a directory, given part of its name
|
|
# (also can take arguments for an `fd` commnd)
|
|
# (also can cd to a file if `-t f` is passed)
|
|
|
|
cds() {
|
|
if ! [ -z "$1" ];then
|
|
DIR="$(fd --max-results=1 -t d $@)"
|
|
if [ -f "$DIR" ];then
|
|
cd "$(dirname "$DIR")" && pwd
|
|
else
|
|
cd "$DIR" && pwd
|
|
fi
|
|
else
|
|
echo "$0: no arguments provided"
|
|
return 1
|
|
fi
|
|
}
|
|
|