如何制作自定义路径标识符?

5 command-line bash alias

为了定义我所说的“自定义路径标识符”,我的意思是一组代表整个路径的短字符,例如~,如果您cd ~在终端模拟器中输入,它将转到您的主文件夹. 但我想为不同的路径定制一个。我在.bashrc文件夹中查找有关如何执行此操作的提示,但不幸的是我找不到任何东西。


“自定义路径标识符”我想说明的是~~/home/myuser/Applications/Custom/Java/。由于我将经常(并且每天)使用该路径,因此我不想继续重新键入整个路径,只需键入~~就可以了。我尝试使用以下alias命令:

alias ~~="/home/myuser/Applications/Custom/Java/"
Run Code Online (Sandbox Code Playgroud)

但是,不幸的是这并没有奏效。


在旁注中,如果我对任何事情使用了错误的术语,我深表歉意,我对所有这些 Linux 东西都很陌生,而且我知道的很少。所以感谢我得到的任何额外信息。

Rad*_*anu 6

波浪号 ( ~) 在 bash 中有特殊含义,是 bash 的扩展,取$HOME环境变量的值。阅读GNU Bash 参考手册中的波浪号扩展部分以了解它的工作原理。所以,我认为你想要完成的事情类似于:

myuser@ubuntu:~$ pushd -n "/home/myuser/Applications/Custom/Java"
~ ~/Applications/Custom/Java
myuser@ubuntu:~$ cd ~1
myuser@ubuntu:~/Applications/Custom/Java$
Run Code Online (Sandbox Code Playgroud)

阅读man pushd更多信息。

接下来,要在/home/myuser/Applications/Custom/Java每次cd ~1在终端中运行命令时直接进入内部,只需将以下行添加到~/.bashrc文件末尾:

pushd -n "/home/myuser/Applications/Custom/Java" >/dev/null
Run Code Online (Sandbox Code Playgroud)

刷新你~/.bashrc有文件source ~/.bashrc,然后使用cd ~1,当你想改变当前的工作目录每次/home/myuser/Applications/Custom/Java

  • @girardengo 这也可以通过在`~/.bash_aliases` 文件中添加以下别名来解决:`alias popd='popd && pushd -n "/home/myuser/Applications/Custom/Java" >/dev/null'` (3认同)