是否有任何 bash 目录书签实用程序允许在命令行上更快地移动?
更新
感谢大家的反馈,不过我创建了自己的简单 shell 脚本(请随意修改/扩展它)
function cdb() {
USAGE="Usage: cdb [-c|-g|-d|-l] [bookmark]" ;
if [ ! -e ~/.cd_bookmarks ] ; then
mkdir ~/.cd_bookmarks
fi
case $1 in
# create bookmark
-c) shift
if [ ! -f ~/.cd_bookmarks/$1 ] ; then
echo "cd `pwd`" > ~/.cd_bookmarks/"$1" ;
else
echo "Try again! Looks like there is already a bookmark '$1'"
fi
;;
# goto bookmark
-g) shift
if [ -f ~/.cd_bookmarks/$1 ] ; then
source ~/.cd_bookmarks/"$1"
else
echo "Mmm...looks like your bookmark has spontaneously combusted. What I mean to say is that your bookmark does not exist." ;
fi
;;
# delete bookmark
-d) shift
if [ -f ~/.cd_bookmarks/$1 ] ; then
rm ~/.cd_bookmarks/"$1" ;
else
echo "Oops, forgot to specify the bookmark" ;
fi
;;
# list bookmarks
-l) shift
ls -l ~/.cd_bookmarks/ ;
;;
*) echo "$USAGE" ;
;;
esac
}
安装
1./创建一个文件~/.cdb 并将上面的脚本复制进去。
2./在你的 ~/.bashrc 添加以下内容
if [ -f ~/.cdb ]; then
source ~/.cdb
fi
3./重启你的 bash session
用法
1./创建书签
$cd my_project
$cdb -c project1
2./转到书签
$cdb -g project1
3./列出书签
$cdb -l
4./删除书签
$cdb -d project1
5./我所有的书签都存储在哪里?
$cd ~/.cd_bookmarks
最佳答案
另外,看看 CDPATH
可用于 cd 命令的以冒号分隔的搜索路径列表,在功能上类似于二进制文件的 $PATH 变量。 $CDPATH 变量可以在本地 ~/.bashrc 文件中设置。
ash$ cd bash-doc
bash: cd: bash-doc: No such file or directory
bash$ CDPATH=/usr/share/doc
bash$ cd bash-doc
/usr/share/doc/bash-doc
bash$ echo $PWD
/usr/share/doc/bash-doc
和
cd -
它是后退按钮的命令行等效项(将您带到您所在的上一个目录)。
关于linux - bash 的目录书签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7374534/