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)
    


  • 相关阅读:
    http请求的跨域
    事件驱动模型
    单例设计
    引用类型与垃圾回收
    注解开发
    Java的反射机制
    Android Listener 监听的几种写法
    人生必须有所规划,工作是好比马拉松
    Android 常用的常量
    Android 常见的广播 action常量
  • 原文地址:https://www.cnblogs.com/wangfengju/p/6172501.html
Copyright © 2011-2022 走看看