linux - 在 Ubuntu(或任何 unix 类型的环境)中执行 shell 脚本时,如何在脚本之外持久保存导出?

标签 linux shell scripting export

我是 Linux 的新手,尤其是 Ubuntu 11,这是我今天第一次尝试。我需要 Linux 进行一些需要基于 Linux 的模拟器的开发,所以我正在尝试编写一个 shell 脚本来设置我的开发环境。

现在我在我的主目录中创建了一个 .scripts 文件夹,并通过将其导出到 .bashrc 中将其添加到我的路径中,所以每次我启动一个新终端时例如,我可以执行我放入其中的任何自定义脚本。

现在这些脚本中的一个(实际上是三个)设置了我所有与开发相关的路径、导出以及一个 cd 命令,该命令切换到该开发的适当文件夹。但是(如果您已经知道这一点,请再次原谅我...)该脚本在其自己的“ session ”中运行(因为缺少更好的词)所以尽管环境变量等都已设置并执行(已证明通过在整个过程中嵌入 echo 调用)当脚本完成并且我返回到我执行脚本的终端时,其他 session 不再存在并且清除屏幕和回显输出除外,没有其他任何东西显示脚本曾经运行过。

现在我不确定是否有可能将该脚本之外的导出变量扩展回调用“实例”,或者我可以设置某种标志以在现有 session 中执行脚本,所以我难倒。

现在,如果这不可能可能,是否至少可以编写一个脚本或设置一个可以启动新终端窗口的图标,然后执行脚本但保持窗口打开并初始化?

谢谢!

标记

最佳答案

将脚本放在~/.bashrc 中的函数定义中。例如

enter_dev_env() {
        cd /home/foo/src
        export foo="bar"
}

关于linux - 在 Ubuntu(或任何 unix 类型的环境)中执行 shell 脚本时,如何在脚本之外持久保存导出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5950713/

相关文章:

java - 为什么 command/usr/libexec/java_home 不起作用?

bash - 如何grep字符的精确十六进制值

bash - 使用 Control C 防止 shell 脚本退出

bash - 如何将 printf 语句的结果分配给变量(前导零)?

linux - Bash 脚本日期 : Day before 15th and last day of month but it has to be a week day

file - 将扩展关联到程序的脚本

c++ - 使用 XFRM 消息更新 IPsec key

linux - 简单循环读取显示哪一行正在读取的文本

linux - 获取 shell 脚本中的行

linux - Ansible:是否可以调整 ext4 文件系统的大小?