假设我有这个别名 .bashrc
alias somedir="cd /var/www/site"
Run Code Online (Sandbox Code Playgroud)
我怎么能用somedirin say ...cd命令?
例如
cd somedir/app/
Run Code Online (Sandbox Code Playgroud)
这样做当前返回:
-bash: cd: somedir/app: 没有那个文件或目录
甚至可以这样使用别名吗?
Kus*_*nda 11
该bash外壳有一个CDPATHshell变量,可以帮助你做到这一点没有一个别名:
$ CDPATH=".:/var/www/site"
$ cd app
/var/www/site/app
Run Code Online (Sandbox Code Playgroud)
如果有一个app叫的子目录doc:
$ cd app/doc
/var/www/site/app/doc
Run Code Online (Sandbox Code Playgroud)
随着CDPATH价值.:/var/www/site,该cd命令将首先在命令行上给出的目录路径当前目录,如果没有被发现,它会寻找下/var/www/site。
从bash手册:
CDPATH
cd命令的搜索路径。这是一个以冒号分隔的目录列表,shell 在其中查找cd命令指定的目标目录。样本值为".:~:/usr"。
请注意,CDPATH不应导出该变量,因为您通常不希望此变量影响bash您从交互式会话运行的脚本。