zoukankan      html  css  js  c++  java
  • UNIX环境高级编程——环境变量表读取/添加/修改/删除

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    int main()
    {
    	char* pValue;
    	pValue = getenv("HOME"); // 起始目录(主目录)
    	 printf("$HOME = %s
    ", pValue);
    	// 在主目录下建立a.txt文件
    	char szFilePath[100];
    	strcpy(szFilePath, pValue);
    	strcat(szFilePath, "/a.txt");
    	FILE* f = fopen(szFilePath, "w+");//w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
    	if(f == NULL)
    	   perror("fopen");
    	fclose(f);
    	// 打印当前工作绝对路径
    	char* pCurPath;
    	pCurPath = getenv("PWD");
    	printf("$PWD=%s
    ", pCurPath);
    	// 打印登录名
    	char* pLogName;
    	pLogName = getenv("LOGNAME");
    	printf("$LOGNAME=%s
    ", pLogName);
    	// 插入新的环境变量
    	int ret;
    	ret = putenv("HC=huangcheng");
    	if (ret != 0)
    	{
    		printf("putenv  Error!" );
    		exit(-1);
    	}
    	pValue = getenv("HC");
    	printf("echo $HC=%s
    ", pValue);
    	// 改变环境变量的值
    	ret = setenv("HC", "ctthuangcheng", 1);
    	if (ret != 0)
    	{
    		printf("setenv  Error!" );
    		exit(-1);
    	}
    	pValue = getenv("HC");
    	printf("echo $HC=%s
    ", pValue);
    	// 删除环境变量
    	ret = unsetenv("HC");
    	if (ret != 0)
    	{
    		printf("unsetenv  Error!" );
    		exit(-1);
    	}
    	pValue = getenv("HC");
    	printf("echo $HC=%s
    ", pValue);
    	
    	return 0;
    }
    

    运行结果:

    huangcheng@ubuntu:~$ ./a.out
    $HOME = /home/huangcheng
    $PWD=/home/huangcheng
    $LOGNAME=huangcheng
    echo $HC=huangcheng
    echo $HC=ctthuangcheng
    echo $HC=(null)
    


  • 相关阅读:
    Eos开发——构造查询条件
    随记
    Spring的三种通过XML实现DataSource注入方式
    事务处理
    Spring AOP实例——异常处理和记录程序执行时间
    输出日志实例改成用Spring的AOP来实现
    用ProxyFactoryBean创建AOP代理
    Spring的通知(Advice)
    Spring的3种切入点PointCut实现
    学习AOP之JAVA的代理机制
  • 原文地址:https://www.cnblogs.com/hehehaha/p/6332475.html
Copyright © 2011-2022 走看看