gcd Guess CD
This commit is contained in:
23
qcd_function
23
qcd_function
@@ -157,4 +157,25 @@ function whenfilechanges() {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function gcd() {
|
||||||
|
# guess cd, find first match in folder
|
||||||
|
local dname
|
||||||
|
local bname
|
||||||
|
local match
|
||||||
|
set -o pipefail
|
||||||
|
dname=$( dirname "$1" )
|
||||||
|
bname=$( basename "$1" )
|
||||||
|
match=$( ls "$dname" | grep "$bname" | head -n 1 )
|
||||||
|
[[ ! "$match" = "" ]] && {
|
||||||
|
echo $match | grep --color=always "$bname"
|
||||||
|
\cd "$match"
|
||||||
|
return
|
||||||
|
}
|
||||||
|
match=$( ls "$dname" | grep -i "$bname" | head -n 1 )
|
||||||
|
[[ ! "$match" = "" ]] && {
|
||||||
|
echo $match | grep -i --color=always "$bname"
|
||||||
|
\cd "$match"
|
||||||
|
return
|
||||||
|
}
|
||||||
|
echo No match.
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user