小编use*_*041的帖子

bash脚本中的源文件

我使用两个版本的ROS彼此相邻.要使用一个,我必须为特定版本获取一些环境变量.我想创建一个执行此操作的脚本.但是,如果我创建一个类似下面的脚本,则未设置变量,它们可能设置在子shell中.如何将文件源到主终端shell?

source.sh:

source /opt/ros/fuerte/setup.bash;
source  ~/fuerte_workspace/setup.bash;
Run Code Online (Sandbox Code Playgroud)

这是我如何调用source.sh:

./source.sh
# This does not echo anything, but I expect it should
echo $ros_config
Run Code Online (Sandbox Code Playgroud)

更新:通过采购答案中建议的source.sh,我现在可以看到正在设置的变量.

source ./source.sh
# This works now
echo $ros_config
Run Code Online (Sandbox Code Playgroud)

bash shell ubuntu

48
推荐指数
2
解决办法
7万
查看次数

标签 统计

bash ×1

shell ×1

ubuntu ×1