我是 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/