[英]How to create a symlink to open a directory in Terminal on Mac osx?
我整天都在使用某些文件夹...例如,我的Documents文件夹中的“dev”。
我有一个明智的想法来设置符号链接,所以我可以简单地键入“dev”,终端将cd进入该目录。 这似乎不起作用。 我的两次尝试都在下面。
任何人都知道如何做到这一点还是有更好的方法?
ln -s /Users/kelly/Documents/Dev/ dev
ln -s 'cd /Users/kelly/Documents/Dev/' dev
$ dev
bash: dev: command not found
使用符号链接,您可以使用
ln -s your/dev/directory/ dev
但是你只能在你创建它的目录中以cd dev
的形式使用它。
如果您只想在任何位置键入dev
,请使用别名:
alias dev="cd your/dev/direcrory/"
(这应该在你的~/.bashrc
)
您可以使用dev的alias
。 添加到$ {HOME} /.bashrc
alias dev='cd /Users/kelly/Documents/Dev/'
和bash在别名中正确解析~
:
alias dev='cd ~/Documents/Dev/'
使用别名根本不需要符号链接。
你必须在你的情况下编写cd dev
,但是你可能更好地使用bash别名 ......
写入$HOME/.bash_aliases
文件:
alias dev='cd /Users/kelly/Documents/Dev/'
打开一个新的终端执行dev
会给你,你想要的...
在$ HOME / .bashrc中,声明一个将目录映射到别名的数组。
declare -A __diraliasmap=(
[dev]="/Users/kelly/Documents/Dev"
[other]="/Users/kelly/Documents"
)
还定义了command_not_found_handle函数。 如果已定义,则在找不到命令时,此函数将由bash运行。 在该函数中,检查失败的命令是否列为目录的别名,如果是,则cd到相关目录。
command_not_found_handle()
{
if [[ ${__diraliasmap[$1]+set} = set ]]; then
builtin cd "${__diraliasmap[$1]}"
else
false
fi
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.