Linux下目录任意切换的技巧,这个小技巧非常实用,每天至少减少10分钟的无效时间。仅仅需要追加下面的代码到$HOME/.bashrc中。
# From
export MARKPATH=$HOME/.marks
function jump {
cd -P $MARKPATH/$1 2> /dev/null || echo "No such mark: $1"
}
function mark {
mkdir -p $MARKPATH; ln -s $(pwd) $MARKPATH/$1
}
function unmark {
rm -i $MARKPATH/$1
}
function marks {
ls -l $MARKPATH | sed 's/ / /g' | cut -d' ' -f9- && echo
}
function _jump {
local cur=${COMP_WORDS[COMP_CWORD]}
local marks=$(find $MARKPATH -type l | awk -F '/' '{print $NF}')
COMPREPLY=($(compgen -W '${marks[@]}' -- "$cur"))
return 0
}
complete -o default -o nospace -F _jump jump
使用方法:
#在某个目录下,使用mark来标记该目录
$ mark dir
#在某他目录下,使用jump来跳转到该目录
$ jump dir
Linux教程:文本操作 三行合并成一行