小编Nel*_*son的帖子

更新脚本的 ~/.bashrc 文件

我正在开发一个脚本来配置和设置 ubuntu-desktop 环境。它所做的更改之一是将函数和其他内容附加到~/.bashrc文件中。在脚本的后面,我需要调用添加到的函数之一,~/.bashrccommand not found出现错误。这是一个示例脚本:

# t.sh
#!/bin/bash

text='test-func() { echo It works!; }'
echo "$text" >> ~/.bashrc

source ~/.bashrc
test-func

echo checkpoint
Run Code Online (Sandbox Code Playgroud)

输出:

./t.sh: line 10: test-func: command not found
checkpoint
Run Code Online (Sandbox Code Playgroud)

我认为采购~/.bashrc会更新外壳,允许我调用,test-func但事实并非如此。谷歌搜索我发现exec bash替换source ~/.bashrc.

新输出:

./t.sh: line 10: test-func: command not found
Run Code Online (Sandbox Code Playgroud)

根据我对 的理解exec,它只是创建了一个切断脚本的新外壳;因此“检查点”永远不会被打印出来。

如何~/.bashrc在同一脚本中更新和运行更新?

任何帮助深表感谢。

bash scripts bashrc

4
推荐指数
1
解决办法
1万
查看次数

标签 统计

bash ×1

bashrc ×1

scripts ×1