我正在尝试编写一个脚本来处理我的aws服务器的所有设置,但是我遇到了.bashrc
的catch-22。我需要从脚本中获取.bashrc
,以便下一个命令可以正常执行,但我无法从我的脚本中获取.bashrc
。我已经阅读了有关此内容的其他帖子,但这些解决方案仍然需要我从父shell中获取,并且无法在脚本中完成。
我试过
$ echo "alias sbrc='source ~/.bashrc'" >> ~/.bashrc
在我的脚本中,但我仍然需要在.bashrc
工作之前在我的脚本之外找到sbrc
,我仍然无法在我的shell脚本中使用sbrc
。
到目前为止的脚本(尝试使用和不使用上面列出的echo命令,都失败了):
#!/bin/bash
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh | bash
source ~/.bashrc
nvm install 6.0
答案 0 :(得分:0)
据我所知,你想安装nvm并用一个命令激活它。通过将所需命令实现为shell函数而不是单独的脚本,这是可行的。
将此功能添加到.bashrc
:
install_and_activate_nvm()
{
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.2/install.sh | bash
source ~/.nvm/nvm.sh
}
按如下方式使用:
install_and_activate_nvm
nvm install 6.0