gpt4 book ai didi

Bash 别名不保存超过一个 session ?

转载 作者:行者123 更新时间:2023-12-04 16:42:29 25 4
gpt4 key购买 nike

我正在尝试为遍历几个文件夹创建一个 bash 别名,但关闭终端后别名没有保存。

我已经将别名保存在 .bashsrc 文件中,并且还运行了命令。 ~/.bashsrc.

这是我所做的:

sudo nano .bashsrc

bashsrc 内部:

alias x = 'cd Documents/Photos/Family'

然后保存退出。

. ~/.bashsrc

别名在该终端窗口中有效,但如果我重新启动终端或打开新选项卡,则会显示“找不到命令”。

最佳答案

您应该更喜欢在 ~/.bashrc~/.bash_profile 中设置更改。

alias x='cd Documents/Photos/Family'

另外,请记住别名不会导出到子shell,并且在使用此别名时,您始终需要出现在 Documents 所在的目录中。我猜您的 Documents 目录存在于 home 中,所以如果您执行以下操作会更好:

alias x="cd "$HOME"/Documents/Photos/Family"

只需将此行添加到两个文件的末尾并保存即可。

在简单的语言中,您的案例有两种类型的 shell,登录和非登录交互式 shell。

在登录 shell 启动之前,.bash_profile 被获取,在非登录 shell 启动之前,.bashrc 被获取。

所以你应该在两者中添加你的更改。

如果您使用的是 macOS,.bashrc 对您的情况几乎没有用处。 MacOS 会将您在终端中打开的每个 shell 视为登录 shell。虽然有一些我不记得的异常(exception)。

正如 David 在评论中提到的,在某些发行版中,~/.bash_profile 只是 ~/.profile(例如 Debian、openSUSE 等)。

关于Bash 别名不保存超过一个 session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57263483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com