Linux export 命令用于设置或显示环境变量。
在 shell 中执行程序时,shell 会提供一组环境变量。export 可新增,修改或删除环境变量,供后续执行的程序使用。export 的效力仅限于该次登陆操作。
例如写一个脚本去执行测试程序:
# 脚本名字:run-test.sh #!/bin/bash # ## 性能测试线程数量 export CS_TEST_THREAD=$2 #新增一个环境变量CS_TEST_THREAD ./nucs-test ip=$1 keyfile=nucs-key@192.168.6.200
执行脚本:
./run-test.sh 192.168.6.129 50
脚本后边跟的第一个参数就是 $1 ,即ip地址,第二个参数就是 $2 ,即线程数量
脚本中会把 $2 的值赋给 CS_TEST_THREAD 这个环境变量。
最后再测试程序的主函数中去获取环境变量
char *env=getenv("CS_TEST_THREAD");
if(env)
{
int n = atoi(env);
printf("%d",n);//打印出50
}
最后会将线程数量50传入程序中。
相关函数介绍:getenv()是函数名,从环境中取字符串,获取环境变量的值,getenv()用来取得参数envvar环境变量的内容。参数envvar为环境变量的名称,如果该变量存在则会返回指向该内容的指针。
返回值: 执行成功则返回指向该内容的指针,找不到符合的环境变量名称则返回NULL。
atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数,参数为指向该字符串的指针。



