linux - 这个导出某些内容的基本 shell 脚本有什么问题

标签 linux bash shell unix scripting

$cat test
export var=value
$./test
$echo $var

我什么也没得到。我期待看到值(value)。

最佳答案

在您的情况下,test 正在一个单独的 shell(您的 shell 的子级)中运行。 child 永远无法改变 parent 的环境。因此,当子进程退出时 var 就会丢失。

如果您想在当前 shell 中运行脚本,请尝试:

source ./test

此外,将脚本命名为“test”通常不是一个好主意。许多unice都有/usr/bin/test

关于linux - 这个导出某些内容的基本 shell 脚本有什么问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7914226/

相关文章:

linux - Pintos,检查失败。运行未正常启动: no "Pintos booting" message

php - 为处理器网关安装 SSL 证书

bash - 在 bash 中使用 awk

bash - 如何在文件中特定字段的单词字符之间插入空格

bash - 在文件的行中搜索特定字段

python - 如何用一堆文本文件中的 '0xa0' 替换所有 ' ' 字符?

linux - sudoers 文件是什么?

python - 在 python 应用程序中包含一个库

linux - 将输出放入下一个管道

android - 如何在 Android 设备本地的终端仿真器中运行 "adb shell"命令?