微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 更改cd默认目录(bash)

我正在寻找一种方法来改变cd的认目录,我想知道这是否可行.我尝试添加

alias "cd=cd ~/Documents/Github" 

到.bashrc,但这显然不起作用,因为它打破了cd命令,因此除了转到该目录之外你不能使用cd.是否有一些导出我可以放入.bashrc来执行此操作?我不想更改我的主目录,只是认目录cd转到.我问,因为我经常使用cd来更改我正在编程的认目录,并且不希望每次我想要更改到目录〜/ workspace时键入cd~ / workspace或cd然后cd工作区.

解决方法:

这是使用别名的更简单的替代方法

alias cd='HOME=~/Documents/Github cd'

>虽然这重新定义了$HOME,但它仅用于cd命令,因此应该是安全的(*).
>这也消除了对任何自定义参数预解析的需要.

如果将其放在〜/ .bashrc中,您应该得到所需的行为.

请注意,认情况下,此别名在脚本(非交互式shell)中不起作用,因为认情况下禁用别名扩展(使用shopt -s expand_aliases显式启用).

(*)@chepner指出一个限制:使用别名你将无法做HOME = / somewhere / else cd,即你将无法重新定义(覆盖)$HOME,ad-特别.然而,正如他进一步指出的那样,很难想象为什么有人会想这样做.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐