我希望能够做的是,当我在终端时输入:
cd myFolderShortcut
为了让其直接进入我已用此别名设置的目录。这可能吗?
我确实对它进行了谷歌搜索并且别名可能是我想要的,但我无法让它工作。
答案1
您不需要快捷方式文件或类似的东西。
~/.bash_profile
您可以通过添加以下行来设置别名,因此您只需输入myFolderShortcut
即可转到那里(不带cd
):
alias myFolderShortcut='cd /Users/danielbeck/Documents'
您还需要输入上述命令或
source ~/.bash_profile
使其生效。这可以从任何目录运行,但需要您的登录 shell bash
(这是 OS X 的默认设置)
当然,您可以在主目录中创建指向其他目录的符号链接。然后,当您打开终端并位于主目录中时,cd
ing 会带您进入链接的目录。
ln -s /Users/danielbeck/Documents/Projects myProjectsDir
然后,输入cd myProjectsDir
,您就到了(显示的路径包含myProjectsDir
,但不包含Documents/Projects
)。
符号链接将显示在 Finder 中。要隐藏它,请键入chflags -h hidden myProjectsDir
。
这仅当您在主目录中时才会起作用(cd
不带参数即可快速到达那里;您可以在同一行输入两个命令:)cd && cd myProjectsDir
。
答案2
我知道这很老了,但这可能会对某些人有所帮助。
按照@Daniel Beck 的上述回答并按照他提到的那样将别名添加到 bash_profile 后,您必须在终端窗口中输入以下内容:
source .bash_profile
这将使您的所有别名都起作用。
我是从 stack overflow 上的这个答案中得到这个答案的。它对我有用。我希望它对那些正在寻找这个答案的人有用...
答案3
我只想补充一点,因为这件事发生在我身上,我花了一些时间才找到错误。我之所以写这个是
alias myFolderShortcut = 'cd /Users/danielbeck/Documents'
因为我喜欢在等号之间留空格。但它给了我一个错误。
因此删除空格后它就可以正常工作了。
因此使用
alias myFolderShortcut='cd /Users/danielbeck/Documents'
我希望这能对将来的某人有所帮助。
答案4
另一种方法是使用 CDPATH 环境变量。它对命令的作用cd
就像 PATH 对正在运行的程序的作用一样 — 如果您键入的cd
命令带有不以/
(或~
) 开头的参数,则 shell 会在 CDPATH 的每个组件下查找具有该名称的目录。例如,如果您想快速访问以下目录:
/Users/benhowdle89/Documents/Projects/Project42
/Applications/MAMP/htdocs/website/WhoAt/solr/whoat
/the/quick/brown/fox/jumps/over/the/lazy/dog
然后将 CDPATH 设置为以下值
:/Users/benhowdle89/Documents/Projects:/Applications/MAMP/htdocs/website/WhoAt/solr:/the/quick/brown/fox/jumps/over/the/lazy
并且您将能够使用命令cd Project42
、、cd whoat
和cd dog
等。值开始用冒号 ( :
) 来包含初始空条目。在某些 shell 中,这是必要的,以便cd
首先查看当前目录。
这应该适用于大多数 POSIX 类型的 shell;例如bash
和ksh
。对于bash
,输入如下命令
export CDPATH=:/Users/benhowdle89/Documents/Projects:/Applications/MAMP/htdocs/website/…
进入您的~/.bash_profile
或~/.bashrc
。 (如果您使用~/.bashrc
,您可能能够省略export
。)对于 csh 类型的 shell,使用cdpath
和适当的 csh 样式语法。