cd 到常用目录的便捷方法?

cd 到常用目录的便捷方法?

cd我经常进入的目录有一条非常长的路径。我想减少击键次数。

我已经尝试过这个...

sudo ln -s /mnt/c/Users/me/ho/hum/bin /mybin

它有效,但似乎有些不对劲。

有没有更好的办法?

我目前使用 bash,但是如果我切换 shell 仍然可以工作的解决方案会很好。

系统信息

在适用于 Linux 的 Windows 子系统上运行 Unbutu。

$ uname -a
Linux Hostname 4.4.0-17763-Microsoft #253-Microsoft  \
    Mon Dec 31 17:49:00 PST 2018  \
    x86_64 x86_64 x86_64 GNU/Linux

答案1

一个简单的解决方案是使用别名。放

alias mb='cd /mnt/c/Users/me/ho/hum/bin'

进入你的~/.bashrc.然后你只需输入mb,bash 就会执行该cd命令。

很多 shell——我敢说大多数(如果不是全部)——都支持别名。但是,您需要将其添加到您要使用的每个 shell 的初始化文件(例如, .cshrc、 )中。.zshrc请注意,不同 shell 的命令语法alias可能有所不同。

答案2

默认情况下,cd相对于您的工作目录进行搜索(如果您指定相对路径,而不是绝对路径)。您可以通过CDPATH在 shell 初始化文件之一中设置环境变量来添加将搜索匹配项的目录。这至少在bash和中得到支持ksh

来自bash手册页:

CD路径

的搜索路径为光盘命令。这是一个以冒号分隔的目录列表,shell 在其中查找由光盘命令。示例值为“.:~:/usr”。

对于您的示例,如果您设置了

export CDPATH=.:/mnt/c/Users/me/ho/hum

然后你可以设置/mnt/c/Users/me/ho/hum/bin为你的工作目录

cd bin

请注意,如果您的预期目的地有一个通用名称 ( bin),则变量中的条目顺序CDPATH将很重要。如果您的工作目录是/usr/local按照CDPATH上一段设置的,那么cd bin将带您到/usr/local/bin而不是/mnt/c/Users/me/ho/hum/bin.

相关内容