UNIX环境高级编程——环境变量表读取/添加/修改/删除
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char* pValue;
pValue = getenv("HOME"); // 起始目录(主目录)
printf("$HOME = %s\n", 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\n", pCurPath);
// 打印登录名
char* pLogName;
pLogName = getenv("LOGNAME");
printf("$LOGNAME=%s\n", pLogName);
// 插入新的环境变量
int ret;
ret = putenv("HC=huangcheng");
if (ret != 0)
{
printf("putenv Error!" );
exit(-1);
}
pValue = getenv("HC");
printf("echo $HC=%s\n", pValue);
// 改变环境变量的值
ret = setenv("HC", "ctthuangcheng", 1);
if (ret != 0)
{
printf("setenv Error!" );
exit(-1);
}
pValue = getenv("HC");
printf("echo $HC=%s\n", pValue);
// 删除环境变量
ret = unsetenv("HC");
if (ret != 0)
{
printf("unsetenv Error!" );
exit(-1);
}
pValue = getenv("HC");
printf("echo $HC=%s\n", pValue); return 0;
}
运行结果:
huangcheng@ubuntu:~$ ./a.out
$HOME = /home/huangcheng
$PWD=/home/huangcheng
$LOGNAME=huangcheng
echo $HC=huangcheng
echo $HC=ctthuangcheng
echo $HC=(null)
UNIX环境高级编程——环境变量表读取/添加/修改/删除的更多相关文章
- Oracle的学习二:表管理(数据类型、创建/修改表、添加/修改/删除数据、数据查询)
1.Oracle表的管理 表名和列名的命名规则: 必须以字母开头: 长度不能超过30个字符: 不能使用oracle的保留字: 只能使用如下字符:A-Z, a-z, 0-9, $, # 等. Oracl ...
- UNIX环境高级编程-环境配置
环境配置步骤如下. 1. 下载源文件:http://www.apuebook.com/src.tar.gz. 2. 复制src.tar.gz文件到/home/me/mydir/unixl/目录(自 ...
- mysql (mariadb)表结构添加修改删除方法总结
1,添加表字段 alter table table1 add ptel varchar(100) not Null; alter table table1 add id int unsigned no ...
- (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- (三) 一起学 Unix 环境高级编程 (APUE) 之 文件和目录
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- (八) 一起学 Unix 环境高级编程 (APUE) 之 信号
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- (十一) 一起学 Unix 环境高级编程 (APUE) 之 高级 IO
. . . . . 目录 (一) 一起学 Unix 环境高级编程 (APUE) 之 标准IO (二) 一起学 Unix 环境高级编程 (APUE) 之 文件 IO (三) 一起学 Unix 环境高级编 ...
- 《UNIX环境高级编程(第3版)》
<UNIX环境高级编程(第3版)> 基本信息 原书名:Advanced Programming in the UNIX Environment (3rd Edition) (Addison ...
随机推荐
- poj2947 高斯消元
Widget Factory Time Limit: 7000MS Memory Limit: 65536K Total Submissions: 5218 Accepted: 1802 De ...
- 安装yum源和gcc编译器遇到的问题
这两天我试着在VMware虚拟机里安装gcc,遇到了不少问题 1. 安装yum源 我搭建的是光盘yum源(有两种方法搭建yum源,另外一种是网络yum源,但至今没弄懂我的网络yum源为什么不成功) ...
- js登录,回车登录
$(document).ready(function(){ $("#loginBtn").click(doLoginEvent); loadCookies(); //回车登录 do ...
- Python里面 search0和 match0的区别?
这是正则表达式里面的函数: match()函数只检测RE是不是在string的开始位置匹配,search()会扫描整个string查找匹配: 也就是说match()只有在0位置匹配成功的话才有返回,如 ...
- jenkins更新后出现JNLP-connect,JNLP2-connect警告
在更新jenkins后出现提示 This Jenkins instance uses deprecated protocols: JNLP-connect,JNLP2-connect. It may ...
- Linux阿里云挂载磁盘,并开机自动挂载
Linux下磁盘挂载 公司新订购阿里云ECS,需要挂载当前的磁盘.暂时没有运维,自己动手挂载磁盘. 具体步骤如下: 1.查看是否已经分配 [root@iZ2ze1tefvghtbgkdur3xfZ / ...
- supervisor使用,配置和安装(包括监控守护进程httpd,keepalived)
yum -y install supervisor(如果安装不成功,需要更新源,yum -y install epel) 或者: wget --no-check-certificate https:/ ...
- python读取文本文件数据
本文要点刚要: (一)读文本文件格式的数据函数:read_csv,read_table 1.读不同分隔符的文本文件,用参数sep 2.读无字段名(表头)的文本文件 ,用参数names 3.为文本文件制 ...
- js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题
js模拟form表单提交数据, js模拟a标签点击跳转,避开使用window.open引起来的浏览器阻止问题 js模拟form表单提交数据源码: /** * js模拟form表单提交 * @param ...
- SpringMVC格式转化错误之HTTP Status [400] – [Bad Request]
SpringMVC中,如果直接为Date类型的属性赋值,服务器有可能会报HTTP Status [400] – [Bad Request] Type Status Report Description ...