四时宝库

程序员的知识宝库

bash的临时变量(shell 声明临时全局变量)

请看例子:

~$ VAR1=hi a.out
hi
~$ echo "v=$VAR1"
v=
~$

a.out的源码:

#include <stdlib.h>
#include <stdio.h>
int main() {
  char* s = getenv("VAR1");
  puts(s ? s : "");
}

再请看:

~$ VAR1=a echo "v=$VAR1"
v=
~$ VAR1=a; echo "v=$VAR1"
v=a
~$ VAR1=a; a.out

~$ export VAR1=a; a.out
a
~$ unset VAR1; echo $VAR1

~$

有;的是两条命令,没;的是一条命令。两条命令时需要export.

英文是Temporarily declare a variable in Bash.

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接