操作Linux系统环境变量的几种方法
一.使用environ指针输出环境变量
代码如下:
#include<stdio.h>
#include<string.h>
#define MAX_INPUT 20
/* 引用指针 */
extern char** environ;
int main(int argc, char** argv)
{
char *temp = NULL;
char** env = environ;
char buf[MAX_INPUT] = {0};
/* 输出全部环境变量 */
while(*env)
printf(" %s \n", *env++);
printf("\nEnter the variable you want to find : \n");
scanf("%s", buf);
printf("The output contains the contents of %s :\n", buf);
/* 重新赋值 */
env = environ;
/* 输出你要查找的内容 */
while(*env)
if(temp = strstr(*env++, buf))
printf("%s \n", temp);
return 0;
}
二.使用函数
首先要说明的是,通过此函数并不能添加或修改 shell 进程的环境变量,或者说通过 setenv() 函数设置的环境变量只在本进程,而且是本次执行中有效。
/* 通过变量名返回环境变量的内容 */
char *getenv(const char *name);
/* 改变或增加环境变量 */
int setenv(const char *name, const char *value, int overwrite);
/* 改变或增加环境变量,其中参数必须以 "name=value" 的形式给出 */
int putenv(char *string);
/* 删除name的定义,即使不存在也不算出错 */
int unsetenv(const char *name);
/* 删除全部的环境变量,并将environ设置为NULL */
int clearenv(void);
三.命令行操作
用命令行修改PATH,只针对当前shell有用,关了终端就失效了,命令如下:
echo $PATH #输出PATH环境变量
export PATH = xxx #设置环境变量
unset PATH #删除环境变量
env #显示所有环境变量
四.修改系统文件
登陆root,在家目录(root)的 .bashrc 添加如下语句就可以设置PATH变量
export PATH = xxx
要使修改生效的话需要重启或执行
source .bashrc
.bashrc 中的修改对于当前账户的每次登陆都有效,
也可以修改 /etc/profile 文件,使其对所有用户生效。
几个文件的介绍:
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bashshell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,它设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
/root/.bash_profile root用户的配置
操作Linux系统环境变量的几种方法的更多相关文章
- Linux添加系统环境变量的两种方法
方法一 export PATH=/usr/local/bin:$PATH 这种方法的PATH 在终端关闭 后就会消失.所以还是建议通过编辑/etc/profile来改PATH 方法二 # vim /e ...
- linux设置变量的三种方法
1在/etc/profile文件中添加变量对所有用户生效(永久的) 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久生效”. 例如:编辑/etc/ ...
- Centos上把新安装的程序添加到系统环境变量的两种方法
1.软链接 通过命令查看当前系统的环境变量信息,然后软连接形式把程序的地址连接到已经在环境变量中的目录中 echo "$PATH" > /root/tmp 结果如下: /us ...
- Ubuntu Linux系统环境变量配置文件【转】
本文转载自:https://my.oschina.net/qinlinwang/blog/30471 Ubuntu Linux系统环境变量配置文件: /etc/profile : 在登录时,操作系统 ...
- linux 系统环境变量配置
使用Ubuntu 进行开发绕不开的就是环境变量的配置,由于Linux系统严格的权限管理,造成Ubuntu系统有多个环境变量配置文件,如果不了解其调用顺序,很有可能遇到配置了环境变量,而没有其作用的问题 ...
- Ubuntu设置环境变量的几种方法
1.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1.1 永久的:需要修改配置文件,变量永久生效. 1.2 临时的:使用export命令声明即可,变量在关闭shell时失效 ...
- java环境变量配置四种方法
原文:java环境变量配置四种方法 Java编程首要工作就是安装JDK(Java Development Kit).一通“NEXT”点完安装后就是最重要的环境变量设置了.也许有人会问为什么要设置环境变 ...
- selenium操作下拉滚动条的几种方法
数据采集中,经常遇到动态加载的数据,我们经常使用selenium模拟浏览器操作,需要多次下拉刷新页面才能采集到所有的数据,就此总结了几种selenium操作下拉滚动条的几种方法 我这里演示的是Java ...
- Linux系统环境变量的四个配置文件的关系
Linux系统环境变量配置有四个文件分别是: /etc/environment,/etc/profile,/etc/bash.bashrc,~/.bashrc 各配置文件意义 /etc/environ ...
随机推荐
- Oracle 触发器和序列的创建和使用 (自动增长列)
-- 创建序列 create sequence 序列名称 start with 1 -- 起始值 increment by 1 -- 增量 maxvalue ...
- 决策树模型组合之随机森林与GBDT(转)
版权声明: 本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系wheeleast@gm ...
- modal 永久移除遮盖层
样式中直接加入: .modal-backdrop { opacity: 0 !important; filter: alpha(opacity=0) !important;}
- 14. The Realities of Telecommuting 远程办公的现状
14. The Realities of Telecommuting 远程办公的现状 (1) Telecommuting——substituting the computer for the trip ...
- Linux 根据PID找到相应应用程序的运行目录
1.找到运行程序的PID # ps aux | grep redis root pts/ S+ : : grep redis root ? Ssl Aug30 : redis-server *: # ...
- pop
package com.example.hellopopupwindow; import android.os.Bundle; import android.app.Activity; import ...
- req、js
requests库中,可不写为headers内各键值对的部分参数: s=requests.Session() #或.session() s.allow_redirects=False #禁止重定 ...
- Linux-程序包管理
Linux上的软件安装有2种形式:源码.二进制文件,源码需要在编译环境下编译安装,二进制可以直接安装. 1.程序包管理器 rpm 程序包管理器能够将目标二进制格式(也就是从源码编译好的二进制文件,包括 ...
- CentOS配置多公网
最终目标是同一台服务器可以多个IP地址共同访问,在这个前提下又有如下两种方式: 多个公网IP使用同一个网关 多个公网IP使用不同网关 这两种方式区别所在:1.多个公网IP使用同一个网关,我们只 ...
- 7.ASP.NET MVC 5.0中的Routing【路由】
大家好,这一篇向大家介绍ASP.NET MVC路由机制.[PS:上一篇-->6. ASP.NET MVC 5.0中的HTML Helpers[HTML帮助类] ] 路由是一个模式匹配系统,它确保 ...