我知道这可能是重复的,如果是这样,我会将其删除。
无需每次都输入目录,最简单的导航到深层目录的方法是什么。我在同一个文件夹中做了很多事情,但每次打开新终端时,我都必须再次导航到该目录。
到目前为止,我一直在 .bashrc 中使用变量,但有没有比
cd $data
到达某个位置?例如,如果我想只输入“数据”即可导航到我的某个数据文件夹,我该怎么做?
答案1
只需为相应的命令创建一个别名即可~/.bashrc
。
alias data='cd /home/User/some_folder/another_folder/data/'
然后运行source ~/.bashrc
。之后你只需输入data
终端,它就会带你到那里
答案2
我首先想到的是 Sergiy 所发布的内容,但另一种方法是在您的主目录中创建一个符号链接:
ln -s data /long/path/to/deep/directory/data
现在,您可以cd data
(从您的主目录,否则是cd ~/data
)在您想要到达那里时直接访问。这还有一个额外的好处,如果您打开 nautilus 并想以图形方式访问那里,您也可以直接单击主目录中的数据链接。
答案3
使用cdable_vars
:
$ data=/tmp
$ shopt -s cdable_vars
$ cd data
/tmp
或者autocd
$ shopt -s autocd
$ $data
cd -- /tmp
从手册:
autocd
如果设置,则将执行目录名称作为命令名,就像它是 cd 命令的参数一样。此选项仅供交互式 shell 使用。
cdable_vars
如果设置了此选项,则内置命令 cd 的非目录参数将被假定为一个变量的名称,该变量的值是要更改到的目录。
如果我们能够将两者结合起来,那将会很棒,但两者在范围上似乎是互相排斥的。