用户环境变量的设定

合集下载

DOS环境变量

DOS环境变量

DOS环境变量“全家福”环境是DOS系统的变量存储区——一个高速暂存存储器,它保存于RAM中,是DOS系统保存重要信息以供批处理文件使用的场所。

用户可以根据需要修正或改变它的信息。

很多DOS参考书都忽略了它,但不管你知不知道,都在自觉或不自觉地使用着它。

如何造访环境造访环境有两种方法,一种是通过SET命令来查看,另一种是使用DOS系统的DEBUG命令来查看计算机的RAM。

SET命令直观、方便,大多数DOS用户都喜欢使用它来设置和查看DOS环境。

1.用SET命令SET命令可用于设置、修改和查看环境变量,键入无参数的SET命令可显示当前环境设置。

这些设置一般包括COMSPEC和PATH环境变量,MS-DOS用它们在磁盘上寻找程序。

另外还有PROMPT、DIRCMD、COPYCMD 等为DOS系统所使用的其它环境变量。

这些环境变量大多在AUTOEXEC.BAT或CONFIG.SYS文件中用SET命令设置而生成。

如下例:C:\>SET COMSPEC=C:\PROMPT=$p$gPATH=C:\WINDOWS;C:\;C:\DOS;C:\FOXPRO25;C:\UCDOS;C:\GYPC;C:\CCED;C:\HD;C:\SARPTEMP=C:\DOS2.通过DEBUG命令DEBUG是DOS提供的调试程序的有力工具,利用它可以检验磁盘原始信息、查看内存单元、反汇编程序文件或生成新程序等等,然而DEBUG命令有一定的危险性,因此用户在使用过程中须注意。

DOS系统每运行一个程序都要生成一个256字节的内存块——程序段前缀PSP(Program Segment Prefix),它包含了一些比较重要的信息,如内存单元、矢量、命令行上键入的文件名、命令行本身(用户运行程序的命令行的拷贝)、各种保留缓冲器存储地点的信息。

只要涉及环境,那些存储地点之一就会保存系统环境地址。

在DEBUG命令状态下查看环境,首先查看偏移量2C处的两个字节:-D2CL21B41:0020 90 09数据90 09是在某系统上得到的计算机环境的段地址值(用户在操作时应以实际显示数为准),把这两对数以相反的顺序,并在后面跟上偏移量0,就能在DEBUG命令上显示系统环境。

ug 环境变量设置大全

ug 环境变量设置大全

ug 环境变量设置大全在UGII_ENV.DAT中把UGII_DEFAULTS_FILE=${UGII_BASE_DIR}\ugii\ug_english.def改成UGII_DEFAULTS_FILE=${UGII_BASE_DIR}\ugii\ug_METRIC.def就可以在开始UG时,内定值为mm在UG_METRIC.DEF中UG_systemColor: 为设定系统颜色UG_initialPartDir: 为设定起始图档位置UG_initialGripDir: 为设定GRIP位置UG_initialUFunDir: 为设定USER FUNCTION位置UG_initialMacroDir: 为设定MARCO位置UG_initialIgsDir: 为设定IGES位置UG_initialStpDir: 为设定STEP位置UG_initialDxfDir: 为设定DXF位置UG_initialTransLogDir: 为设定LOG位置UG_layersInList: 有all, selectable, objects 三个,建议用OBJECTSUG_showObjectCount: 建议ONUG_showCategoryNames: 建议ONSolids_undoFileSize:4095.000 UNDO暂存,最大值到4095Solids_tolerDist_EU: 0.0010 ! Inches 英制公差Solids_tolerDist_MU: 0.0254 ! mm 公制公差Solids_tolerAngl: 0.5000 ! degrees 角度公差Solids_FreeFormConstructionResult: 0 建议若是做机构用0比较好,若是造型用1比较好1. 复制 UGii_simple_chinese.lng 到一个新的目录并重新命名为ugii.lng (如:\UGS180\UGChina\ugii.lng)2. 建立一个新的文件 ug.bat 在该目录下并输入以下内容:@ECHO OFFset UGII_LANGUAGE=%UGII_BASE_DIR%\UGChinaset UGII_MAIN_MENU_FILE=%UGII_BASE_DIR%\ugii\menus\ug_main.men%UGII_BASE_DIR%\ugii\ugraf.exe3. 保存后运行 ug.bat就如Pro/E可以用系统环境变量LANG=chs来控制简体中文界面一样,UG NX1.0的语言界面现在也可随心所欲地用系统环境变量来控。

shell编程之给变量赋值的五种方法

shell编程之给变量赋值的五种方法

shell编程之给变量赋值的五种方法1. Shell中的变量类型Shell中的变量可以分为环境变量、位置变量、预定义的特殊变量以及用户自定义变量、<!--[if !supportLists]-->2. <!--[endif]-->环境变量Shell中的环境变量是一类Shell预定义变量,是用于设置系统运行环境的变量,环境变量由系统统一命名。

部分系统变量的值由系统设定,部分环境变量的值可以由用户给定。

环境变量的名称由大写字母组成,常用的Shell环境变量如下所示:HOME: 用户主目录的全路径名,cd $HOME 即可切换到用户的主目录PATH:类似于windows下的路径,Shell会在里面依次寻找二进制的可执行文件。

echo $PATH可以显示当前的PATH,添加新的PATH方法$PATH=$PATH:新PATHTERM: 终端类型 echo $TERMPS1: 提示符,root用户默认为#,普通用户默认为$SHELL: Shell解释器的绝对路径LOGNAME: 登录用户的用户名UID:当前用户的UID echo $UID<!--[if !supportLists]-->3. <!--[endif]-->位置变量位置变量是根据出现在命令行上的参数的位置确定的变量,在调用Shell程序的命令行中,参数的位置定义如下所示。

$命令参数1 参数2 参数3其中 $0 对应执行的命令名$1 对应参数1$2 对应参数2$3 对应参数3(一定要搞清楚顺序!!)<!--[if !supportLists]-->4. <!--[endif]-->预定义的特殊变量预定义的特殊变量有着特殊的含义,用户不可以更改,所有的预定义变量都由“$”符号和另外一个符号组成,常用的预定义特殊变量如下所示$#:位置参数个数(不包括Shell脚本名)$*: 位置参数组成的字符串$!: 上一个后台命令对应的进程号$?: 上一个命令的退出状态,为十进制数字,如果返回为0,则代表执行成功。

ug环境变量设置大全

ug环境变量设置大全

ug 环境变量设置大全在UGII_ENV.DAT中把UGII_DEFAULTS_FILE=${UGII_BASE_DIR}\ugii\ug_.def改成UGII_DEFAULTS_FILE=${UGII_BASE_DIR}\ugii\ug_METRIC.def 就能够够在开始UG时,内定值为mm在UG_METRIC.DEF中UG_systemColor: 为设定系统颜色UG_initialPartDir: 为设定起始图档位置UG_initialGripDir: 为设定GRIP位置UG_initialUFunDir: 为设定USER FUNCTION位置UG_initialMacroDir: 为设定MARCO位置UG_initialIgsDir: 为设定IGES位置UG_initialStpDir: 为设定STEP位置UG_initialDxfDir: 为设定DXF位置UG_initialTransLogDir: 为设定LOG位置UG_layersInList: 有all, selectable, objects 三个,建议用OBJECTS UG_showObjectCount: 建议ONUG_showCategoryNames: 建议ONSolids_undoFileSize:4095.000 UNDO暂存,最大值到4095 Solids_tolerDist_EU: 0.0010 ! Inches 公差Solids_tolerDist_MU: 0.0254 ! mm 公差Solids_tolerAngl: 0.5000 ! degrees 角度公差Solids_FreeFormConstructionResult: 0 建议假设是做机构用0比较好,假设是造型用1比较好1. 复制 UGii_simple_chinese.lng 到一个新的目录并从头命名为ugii.lng (如:\UGS180\UGChina\ugii.lng)2. 成立一个新的文件 ug.bat 在该目录下并输入以下内容:@ECHO OFFset UGII_LANGUAGE=%UGII_BASE_DIR%\UGChinaset UGII_MAIN_MENU_FILE=%UGII_BASE_DIR%\ugii\menus\ug_main.men%UGII_BASE_DIR%\ugii\ugraf.exe3. 保留后运行 ug.bat就如Pro/E能够用系统LANG=chs来操纵简体中文界面一样,UG NX1.0的语言界面此刻也可为所欲为地用系统来控。

CentOS6.5下Oracle11G完整安装步骤

CentOS6.5下Oracle11G完整安装步骤

CentOS6.5下Oracle11g安装完整步骤一、硬件要求本部分内容命令,均以root用户执行。

1、内存建议内存应大于2G以上,1G可以运行,但比较吃力。

内存查看命令:[root@tsp-rls-dbserver /]# cat /proc/meminfo或[root@tsp-rls-dbserver /]# free -mtotal used free shared buffers cachedMem: 32062 1301 30760 0 40 552-/+ buffers/cache: 708 31354Swap: 16095 0 160952、交换分区交换分区大小,通常设为内存的1.5倍以上,也可以根据实际情况进行调整。

交换分区查看命令:[root@tsp-rls-dbserver /]# grep SwapTotal /proc/meminfoSwapTotal: 67682296 kB3、硬盘空间建议数据使用独立的挂载分区,本文中采用/data作为数据分区。

要求/tmp目录空间不小于400M。

磁盘空间查看命令:[root@tsp-rls-dbserver /]# df -hFilesystem Size Used Avail Use% Mounted on/dev/mapper/vg_tsprlsdbserver-lv_root 50G 4.3G 43G 10% /tmpfs 16G 348K 16G 1% /dev/shm/dev/sda1 485M 39M 421M 9% /boot/dev/mapper/vg_tsprlsdbserver-lv_home 210G 190M 199G 1% /home/dev/sdb1 1.1T 4.5G 1.1T 1% /data目录空间大小查看命令:[root@tsp-rls-dbserver tmp]# du -ch /tmp二、软件要求1、安装依赖包建议安装系统时,选择开发库。

fluent环境变量设置-资料汇总

fluent环境变量设置-资料汇总

FLUENT环境变量设置<资料汇总>前一段时间安装了ansys14,但是在编译UDF的过程中,老是出问题,现将解决过程以及解决方案,将网上的资料总结了一下:对于编译型UDF,在fluent中加载时,需要调用C编译器将其编译成DLL文件。

这里的C编译器虽说理论上是没有任何限制的,但是在windows环境下还是推荐使用microsoft visual c++,在linux环境下推荐使用GCC。

我们这里只说windows环境下编译环境的配置问题。

通常,fluent不能编译的常见错误如下:1)'nmake' 不是内部或外部命令,也不是可运行的程序。

点击load时则出现不可编译的错误:Opening library "libudf"...Error: open_udf_library: 系统找不到指定的文件。

Error Object: ()原因:环境变量有问题。

可能是安装vc++时没有勾选设置环境变量。

2)如果设置好环境变量了,build时不再出现/'nmake' 不是内部或外部命令,也不是可运行的程序。

/ 但点load时仍出现Opening library "libudf"...Error: open_udf_library: 系统找不到指定的文件。

Error Object: ()那么可能是因为没有加入头文件(Header files)udf.h。

加入source files 和header files 后重新build 再load 就OK啦。

3)在build是若出现错误:udf_names.c(40) : fatal error C1071: unexpected end of file found in comment。

一种原因是:udf定义了多个宏命,有一些不需要,加了 /* */ 引起的错误。

解决的方法就是删除这些多余的宏,只保留需要的。

j2se的环境变量

j2se的环境变量

例子
• set path=c:\javawork;d:\javawork -设置环境变量时,目录名之间用英文下到分号隔开 • set classpath=c:\javawork\lesson1;. -设置classpath变量时,在后面加上“.”,表示把classpath变量指定的 目录设定到当前目录
ቤተ መጻሕፍቲ ባይዱ环境变量
• • • 系统环境变量: 用户环境变量: 当前环境变量:用户环境变量和系统环境变量的总和,用户环 境变量覆盖了系统环境变量
设置环境变量
• • • • 命令行中设置的环境变量只对当前命令行起作用 等号两边不能有空格 目录名当中不能有空格 目录名当中不能有中文
错误的写法
• • • • set path=c:\java work set path =c:\javawork set path= c:\javawork set path=c:\我的javawork
帮助文档
• Jdk1.40.ico • Jdk1.40.chm
反编译工具
• JAD • FrontEnd

linux环境变量基本概念以及如何定制环境变量

linux环境变量基本概念以及如何定制环境变量
4、 在profile文件添加或修改的内容需要注销系统才能生效(如果不想主销系统,则可以直接用source命令)。
5、 重复定义变量怎样理解
经常出现的是对PATH变量的定义。
例如:在peofile文件默认对PATH变量都有设置PATH=XXXXXX,在以后可能在对PATH设置,一般都加在profile文件的最后PATH=······(打个比方)。而系统之中认定的PATH=·······XXXXXXXX,也就是说相同名字的环境变量,后写入的先起作用(通俗地讲)!!!!!!!!!!!!!
2、 常在/etc/profile文件中修改环境变量,在这里修改的内容是对所有用户起作用的。以下主要操作将在该文件中进行。
3、如何添加环境变量。
例如添加”NAME=liheng“ 。
在profile文件的最后添加如下内容export NAME=liheng
变量值liheng可以加引号也可以不加,效果一样。
$ export TEST="Test..." # 增加一个环境变量TEST
$ env|grep TEST # 此命令有输入,证明环境变量TEST已经存在了
TEST=Test...
$ unset $TEST # 删除环境变量TEST
$ env|grep TEST # 此命令没有输出,证明环境变量TEST已经不存在了
-bash: unset: TEST: cannot unset: readonly variable
$ TEST="New" # 会发现此时变量不能被修改
-bash: TEST: readonly variable
附加说明:
l etc/profile对整个系统有效

LinuxShell环境变量初探

LinuxShell环境变量初探
下面是一个典型的输出:
CC=gcc
CDPATH=.:~:/usr/local:/usr:/
CFLAGS=-O2 -fomit-frame-pointer
COLORTERM=gnome-terminal
CXXFLAGS=-O2 -fomit-frame-pointer
DISPLAY=:0
和PS1类似的还有PS2 PS3 PS4.
PS2 是用户次提示符tcsh没有. 一条命令没有结束 的话在二行给出的提示符. 默认>
2PS3 菜单提示符.保存用于select空置结果的菜单提示符
PS4 保存bash的调试提示符.
附二:保留变量
Bourne shell保留变量
Bash和 Bourne shell以同一种方法来使用特定的shell变量。某些情况下,Bash为变量分配一个默认的值。下表给出一个简单的shell变量的概览:
HOME | 当前用户的home目录;默认为内建命令 cd 。这个变量的值同样被~扩展使用。
IFS | 分割域的一个字符的列表;用于shell把词分开作为扩展。
MAIL | 如果这个变量设成一个文件名并且 MAILPATH 变量没有设置,Bash在指定文件中通知用户邮件的到达。
四、常用的环境变量如下:
$HOME 当前用户的主目录的全路径名
$LOGNAME 即注册名,由Linux自动设置。它是与系统交互的名字或字符串。
$PATH 以冒号分隔的用来搜索命令的目录列表
$PS1 命令提示符,通常是$,但在bash中可以使用一些更复杂的值。
$PS2 二级提示符,用来提示后续的输入,通常是>字符
Charles the Great

set和setenv

set和setenv

set和setenv今天⽤set设置PATH变量(加⼀个路径),发现虽然echo的时候显⽰修改成功了,实际执⾏命令的时候确没有去那个路径查找;当前shell 是c shell(csh).在⽹上找了⼀些材料,总结如下:1.说明使⽤set和setenv命令可以设置shell选项或者列出shell变量,其中setenv 是csh的命令,在bash中⽤export命令,alias作⽤相当windows下的快捷⽅式。

2.语法格式set 变量名=内容set 变量名=(内容1 内容2 )set 变量名="内容1 内容2"setenv 变量名内容setenv 变量名 "内容1 内容2"setenv 变量名 '内容1 内容2'alias 简化名称原⽂件名alias 简化名称 "原⽂件名参数"3。

set主要是⽤来设置变量,这⾥的变量是普通变量,就像C语⾔⾥⼀样,使⽤⼀个变量以前要申明⼀下。

setenv中的env就是环境environment的简写,这个命令是⽤来设置环境变量的,譬如说设置⽂件路径、本地显⽰啊什么的,举个例,如果想调⽤服务器的软件在本地显⽰,⽤这个命令:setenv DISPLAY 1xx.1xx.1xx.1xx:0 。

在bash中export命令和csh中的setenv命令类似。

4。

环境变量和内部变量:后者不能被⼦进程继承(如同C⾥的局部变量)--改环境变量就会⾃动改内部变量,反之不然。

“set”可给出内部变量列表,“env”可给出环境变量列表。

继承只对环境变量有效sh: PATH=/usr/bin:$PATH ; export PATH--注意:在export前为内部变量,之后为环境变量。

Csh: set setenv PATH /usr/bin:$PATH--注意:在csh中环境变量的赋值(setenv)没有等号,⽽内部变量的赋值(set)有等号。

Windows系统中path环境变量详解

Windows系统中path环境变量详解

Windows系统中path环境变量详解在学习JAVA的过程中,涉及到多个环境变量(environment variable)的概念,如PATH。

正确地配置这些环境变量,是能够顺利学习、开发的前提。

⽽经常出现的问题是:有的学习者能够按照提⽰⼀步⼀步地正确配置,但时间⼀长就忘了,出现了问题也⽆从下⼿。

究其原因,就是对这些概念没有理解,知其然但不知其所以然。

下⾯的内容,就是帮助⼤家知其所以然。

⼀、基本原理⾸先看PATH环境变量。

JAVA的初学者,必须要学会配置PATH环境变量,否则⽆法编译、运⾏JAVA程序。

那么,为什么要配置PATH环境变量呢?PATH环境变量是做什么的呢?我们从⼀个常见的问题⼊⼿。

当我们安装好JAVA后,若没有正确配置PATH环境变量,则在命令⾏窗⼝(开始-&gt;运⾏-&gt;输⼊cmd,回车)下运⾏命令java -version(显⽰JAVA的版本)命令时,会出现如下的错误提⽰信息:图⼀这条错误信息的意思是,你要求运⾏的“java”这条命令我不认识,不知道是个什么玩意⼉。

那么究竟这个“java”命令是何⽅神圣呢?在JDK 的安装⽬录下(我的是D:\Java\jdk1.6.0_24),有⼀个bin⽬录。

打开此⽬录,会发现⼤量的可执⾏⽂件(后缀名为exe的⽂件。

Windows默认隐藏⽂件后缀名。

要显⽰后缀名,可在当前窗⼝上⽅菜单栏⾥点“⼯具”菜单-&gt;⽂件夹选项-&gt;查看-&gt;⾼级设置-&gt;清除“隐藏已知⽂件类型的扩展名”前⾯的钩钩-&gt;确定)。

其中有⼀个可执⾏⽂件即为java.exe。

现在在命令⾏窗⼝下把当前⽬录切换到这个bin⽬录下。

通过如下命令实现:图⼆在此⽬录下,运⾏dir命令,显⽰当前⽬录下的所有⽂件和⽬录。

从显⽰结果中,我们可以清楚地看到“java.exe”这个⽂件。

如下图所⽰:图三实际上我们执⾏“java”命令,就是要运⾏“java.exe”这个可执⾏⽂件(我们运⾏其他命令,本质上也是要执⾏某个程序⽂件)。

环境变量etc中environmentenvprofile设置及区别

环境变量etc中environmentenvprofile设置及区别

环境变量etc中environmentenvprofile设置及区别(转载⾃/bazhaohua/blog/item/94bdd02e014833341e308974.html,/adparking/archive/2010/06/29/5701764.aspx,纯粹为学习⽽整理)经过我查看资料以后我发现我的environment⾥⾯设置了三个变量path,classpath,和javahome。

那么系统总是先启动environment在查看profile 那么,我在这⾥添加的就要照应environment的变量了,javahome不⽤设定了,两个⽂件是⼀样的,那么其他的不是很全要设定⼀下。

为什么不在environment⾥⾯全部设定完毕呢?应为他是系统的,设定很多没必要,可能还会引发启动问题,起不了机器呢,⼀般不要改。

但是⼜不能总是⼀打开及其就export path=“……”,很⿇烦,那么就在系统⾃动调⽤proflie时设置把。

需要重新启动系统才能⽣效。

在shell中查看env,直接设置path 然后再查看发现变了,但是关了这个shell在打开⼀个还是原来那样。

所以阿,env只是对当前shell有效,启动shell他会查看usr/bin/env。

但是只限于shell.如果在profile中写了export语句他就会⾃动设置给env,那么我们打开哪个shell他们的env也就是PATH……值也都是⼀样的。

在profile⾥设置环境变量是在etc/environment的前提下添加的#/etc/environment(系统环境)中的:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/jdk1.6.0_18/bin"CLASSPATH=.:/usr/lib/jvm/jdk1.6.0_18/libJAVA_HOME=/usr/lib/jvm/jdk1.6.0_18#/etc/profile(⽤户环境)中的:export PATH=$PATH:$JRE_HOME/binexport CLASSPATH=$CLASSPATH:/usr/lib/jvm/jdk1.6.0_18/jre/libexport JRE_HOME=/usr/lib/jvm/jdk1.6.0_18/jreexport CATALINA_HOME="/usr/local/tomcat"#env(⽤户环境,全部信息)中的:CLASSPATH=.:/usr/lib/jvm/jdk1.6.0_18/lib:/usr/lib/jvm/jdk1.6.0_18/jre/libPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/jdk1.6.0_18/bin:/usr/lib/jvm/jdk1.6.0_18/jre/binJAVA_HOME=/usr/lib/jvm/jdk1.6.0_18JRE_HOME=/usr/lib/jvm/jdk1.6.0_18/jreCATALINA_HOME=/usr/local/tomcat将export LANG=zh_CN加⼊/etc/profile ,退出系统重新登录,登录提⽰显⽰英⽂。

PROE的环境变量设置

PROE的环境变量设置

fudegang.5d6d./thread-110-1-1.html◆Config.pro设置方法:选择Utilities--->Preferences-->Edit Config(进入编辑状态)/Load Config(加载环境参数)注意:在编辑状态时,按下键盘上的F4键将会出来一个对话框,这个对话框中的说明可以提醒你可以输入值的X围。

◆config.pro存储位置:⑴Pro的安装目录,\loadpoint\text;⑵用户执行ProE所在的工作目录;⑶用户的目录下◆config.pro执行顺序:Pro的安装目录\loadpoint\text目录下;---->用户执行ProE所在的工作目录下;两者如有重复的环境参数设置,以最后读取的环境设置参数为主。

如果想以第一次的为主,可以将config.pro更名为config.sup强制使用这个文件。

PROE的缺省环境变量7、斑竹,请教了,在PROE2000I中,系统配置文件的某些改变,好象会多出一些菜单。

这是咋回事?答:如你需要象SHAFT,LIP,等命令的话,可在CONFIG文件里设置的可以在CONFIG文件中加一行“ALLOW_ANA TOMIC_FEATURES YES"即可比如shaft特征缺省时不会显示。

8、如何设定PROE的缺省环境变量,如单位、精度等,而不是每一次打开PROE靠装入CONFIG 来设定?答:你把CONFIG文件设好后,放在以下目录:proe2000i\\text 并改名为config.sup@@标题: proe系统环境配置文件(config.pro)这是Pro/ENGINEER软件系统提供给用户定制自己工作环境的配置文件。

它是一个文本文件,利用这个文件用户可以定制很多标准设置,如定制菜单、公差显示模式、尺寸单位、映射键(Mapkey)、计算精度、工程图控制等等。

一般在企业或公司把它定制为标准文件,作为大家共同的工作环境,在应用产品数据管理(PDM)和协同设计过程中便于交流和数据共享。

在Linux里设置永久环境变量的方法

在Linux里设置永久环境变量的方法
declare -x SSH_TTY="/dev/pts/2"
declare -x TERM="linux"
declare -x USER="root"
declare -x USERNAME="root"
可以看到,环境变量已经设好,PATH里面已经有了我要加的编译器的路径。
2、修改profile文件:
在Linux里设置环境变量的方法
一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量。例如我的mips-linux-gcc编译器在“/opt/au1200_rm/build_tools/bin”目录下,build_tools就是我的编译工具,则有如下三种方法来设置环境变量:
declare -x LS_COLORS="no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:"

set、env、export——Linux中的环境变量命令

set、env、export——Linux中的环境变量命令

Linux是一个多用户的操作系统。

每个用户登录系统后,都会有一个专用的运行环境。

通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。

用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。

什么是环境变量环境变量是一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。

许多用户(特别是那些刚接触Linux的新手)发现这些变量有些怪异或者难以控制。

其实,这是个误会:通过使用环境变量,你可以很容易的修改一个牵涉到一个或多个应用程序的配置信息。

常见的环境变量对于PATH和HOME等环境变量大家都不陌生。

PATH能够指定命令的搜索路径,那么动态链接库的路径用什么变量指定呢?或者就是在PATH里面?比如有一个程序需要/usr/local/lib下面的一个库文件,应该怎么指定其路径呢?经常看到有些变量如LD_LIBRARY_PATH,LIBPATH,CLASSPATH等,他们之间有什么不同和关系?除此之外,还有下面一些常见环境变量。

◆HISTSIZE是指保存历史命令记录的条数。

◆LOGNAME是指当前用户的登录名。

◆HOSTNAME是指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的。

◆SHELL是指当前用户用的是哪种Shell。

◆LANG/LANGUGE是和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。

◆MAIL是指当前用户的邮件存放目录。

◆PS1是基本提示符,对于root用户是#,对于普通用户是$。

PS2是附属提示符,默认是“>”。

可以通过修改此环境变量来修改当前的命令符,比如下列命令会将提示符修改成字符串“Hello,My NewPrompt ”。

# PS1=" Hello,My NewPrompt "Hello,My NewPrompt除了这些常见的环境变量,许多应用程序在安装时也会增加一些环境变量,比如使用Java就要设置JAVA_HOME和CLASSPATH等,而安装五笔输入法会增加环境变量"XMODIFIERS=@im=fcitx"等。

unbantu环境变量

unbantu环境变量
3)~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
注:~在LINUX下面是代表HOME这个变量的。
另外在不同的LINUX操作系统下,这个文件可能是不同的,可能是~/.bash_profile; ~/.bash_login或 ~/.profile其中的一种或几种,如果存在几种的话,那么执行的顺序便是:~/.bash_profile、 ~/.bash_login、 ~/.profile。比如我用的是Ubuntu,我的用户文件夹下默认的就只有~/.profile文件。
1)etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
注:在这里我们设定是为所有用户可使用的全局变量。
2)/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
(2)/etc/bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。
(3)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。
$sudo vim /etc/bash.bashrc
在ubuntu 下修改的是/etc/profile(注意针对不同的系统,不同的配置文件)
$sudo gedit /etc/profile

使windows系统环境变量的改变即时生效

使windows系统环境变量的改变即时生效

使windows系统环境变量的改变即时⽣效转载,原地址:如何使windows系统环境变量的改变即时⽣效在这⾥给出⼀种⽅案,使⽤wmic命令对JDK的环境变量进⾏配置,可即时⽣效,不⽤重启系统。

该⽅法为本⼈在实际⼯作中实践出的⽅法,需要的朋友可以按照下⽂内容进⾏操作。

该命令使⽤批处理⽂件进⾏执⾏,其⽂件包的⽬录结构及⽂件内容如下:⽬录结构:------ JDK_Environment ⽂件夹------ readme.txt ⽂本⽂档⽂件------ JDK_Environment.bat 批处理⽂件------ Step ⽂件夹------ JDK_Env_Step1.bat 批处理⽂件------ JDK_Env_Step2.bat 批处理⽂件⽂件:⽂件1:readme.txt位置:JDK_Environment ⽂件夹内容:==========使⽤wmic命令对JDK的环境变量进⾏配置,可即时⽣效,不⽤重启系统。

==========⽂件清单:1. JDK_Environment.bat⽂件类型:Windows批处理⽂件⽂件说明:可直接执⾏该批处理,⼀步完成JDK环境变量的设置。

注:可直接使⽤JDK_Environment.bat,⼀步完成JDK环境变量的设置,若使⽤Step⽂件夹中的批处理,则需按说明分步完成。

2. Step⽂件类型:⽂件夹⽂件说明:分步执⾏其中两份批处理⽂件,完成JDK环境变量的设置。

2.1 JDK_Env_Step1.bat⽂件类型:Windows批处理⽂件⽂件说明:⾸先执⾏,完成JDK环境变量设置的第⼀步,JAVA_HOME的设置。

2.2 JDK_Env_Step2.bat⽂件类型:Windows批处理⽂件⽂件说明:其次执⾏,继续完成JDK环境变量设置的第⼆步,path与CLASSPATH的设置。

注意:1. 若在path与CLASSPATH变量值的设置时,使⽤了JAVA_HOME的引⽤%JAVA_HOME%,则需在不同的“命令提⽰符”窗⼝中,分别进⾏JAVA_HOME与他们俩的设置⼯作。

解决sudo用户找不到环境变量的问题

解决sudo用户找不到环境变量的问题

解决sudo⽤户找不到环境变量的问题出于安全⽅⾯的考虑,使⽤sudo执⾏命令将在⼀个最⼩化的环境中执⾏,环境变量都重置成默认状态。

所以PATH这个变量不包括⽤户⾃定义设置的内容在sudo⽤户的主⽬录⾥的.bashrc中添加如下内容即可解决$ vim ~/.bashrcalias sudo="sudo env PATH=$PATH"有这样⼀个shell脚本,其内容如下,没有给其x权限vim test.sh#!/bin/bashecho "${PATH}"# 执⾏该脚本,可以看到echo输出的结果[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ bash test.sh/opt/ossutil:/opt/openresty/nginx/sbin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/jdk1.8/bin:/opt/jdk1.8/jre/bin:/home/test_ops/.local/bin:/home/test_ops/bin# 但是加上sudo,上述结果就不显⽰了,⽽是⼀个系统默认的${PATH}变量结果[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ sudo bash test.sh/sbin:/bin:/usr/sbin:/usr/bin# 因其没有x权限,所以⽆法这样执⾏[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ sudo ./test.shsudo: ./test.sh: command not found# 给该脚本加上x权限[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ chmod a+x test.sh[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ lltotal 4-rwxrwxr-x 1 test_ops test_ops 28 Sep 11 11:55 test.sh# 可以执⾏,但结果相同[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ sudo ./test.sh/sbin:/bin:/usr/sbin:/usr/bin# 在⽤户的主⽬录⾥的.bashrc中添加如下内容[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ vim ~/.bashrcalias sudo="sudo env PATH=$PATH"# 退出登陆后再次执⾏,其结果正是⾃⼰想要的效果[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ sudo ./test.sh/opt/ossutil:/opt/openresty/nginx/sbin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/jdk1.8/bin:/opt/jdk1.8/jre/bin[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ sudo bash test.sh/opt/ossutil:/opt/openresty/nginx/sbin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/jdk1.8/bin:/opt/jdk1.8/jre/bin[test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ bash test.sh/opt/ossutil:/opt/openresty/nginx/sbin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/jdk1.8/bin:/opt/jdk1.8/jre/bin:/home/test_ops/.local/bin:/home/test_ops/bin [test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$ ./test.sh/opt/ossutil:/opt/openresty/nginx/sbin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/jdk1.8/bin:/opt/jdk1.8/jre/bin:/home/test_ops/.local/bin:/home/test_ops/bin [test_ops@iZ2zej3o3e9be3aoukimfzZ ~]$。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
– 编写源代码 – 用编译工具编译连接,生成可执行文件 – 运行该可执行文件
1/8/2019 3/34
一个简单的例子—hello.c
• 用vi编写源文件:
#include <stdio.h> void main() { printf(“hello world.\n”); }
• 用gcc编译 gcc hello.c • 运行 a.out
1/8/2019 5/可执行文件,编译器只是由输入的.c等源代 码文件生成.o为后缀的目标文件,通常用于编译不包含主程序的子程 序文件。 • -o output_filename:确定输出文件的名称为output_filename,同时这个 名称不能和源文件同名。如果不给出这个选项,gcc就给出预设的可 执行文件a.out。 • -g:产生符号调试工具(GNU的gdb)所必要的符号资讯,要想对源代码 进行调试,我们就必须加入这个选项。 • -O:对程序进行优化编译、连接,采用这个选项,整个源代码会在编 译、连接过程中进行优化处理,这样产生的可执行文件的执行效率可 以提高,但是,编译、连接的速度就相应地要慢一些。 • -O2:比-O更好的优化编译、连接,当然整个编译、连接过程会更慢。
LINUX 环境下程序开发基础
曙光用户培训课程系列
课程时间:1.5小时
更新日期:2008年3月
1/34
Linux环境下 程序编译
1/8/2019
Linux环境下程序编译
2/34
Linux与C
• Linux与C是天然的结合,从它们的诞生开始就有密切的联 系:Linux的前身Unix在用C语言改写之后才为世界所广泛 接受;而C语言也是在Unix编写、传播的过程中发展和流 行起来的 • Linux平台为C语言提供的编译工具是gcc。Gcc除了处理一 般的C语言程序,还支持C++、Objective C等一些语言。曙 光4000A提供了PGI C/C++ compiler— pgcc/pgCC • Linux系统与其他系统类似,C语言程序的运行过程分为三 步:
1/8/2019
6/34
GCC常用编译参数
• -Idirname:将dirname所指出的目录加入到程序头文件目录 列表中,是在预编译过程中使用的参数。C程序中的头文 件包含两种情况: A)#include <stdio.h> B)#include “myinc.h” 其中,A类使用尖括号(< >),B类使用双引号(“ ”)。对 于A类,预处理程序cpp在系统预设包含文件目录(如 /usr/include)中搜寻相应的文件,而对于B类,cpp在当前目 录中搜寻头文件,这个选项的作用是告诉cpp,如果在当 前目录中没有找到需要的文件,就到指定的dirname目录中 去寻找。在程序设计中,如果我们需要的这种包含文件分 别分布在不同的目录中,就需要逐个使用-I选项给出搜索 路径。
1/8/2019 4/34
GCC简介
• gcc(GNU C Compiler)是GNU推出的功能强大、性能优越的多平台 编译器,是GNU的代表作品之一。 • gcc编译器能将C、C++语言源程序、汇程式化序和目标程序编译、连 接成可执行文件,如果没有给出可执行文件的名字,gcc将生成一个 名为a.out的文件。 • 在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来 区分可执行文件和不可执行文件。而gcc则通过后缀来区别输入文件 的类别,下面我们来介绍gcc常用的一些后缀。 – .c为后缀的文件,C语言源代码文件 – .a为后缀的文件,是由目标文件构成的档案库文件 – .C,.cc或.cxx 为后缀的文件,是C++源代码文件 – .h为后缀的文件,是程序所包含的头文件 – .o为后缀的文件,是编译后的目标文件 • gcc最基本的用法是∶gcc [options] [filenames] 其中options就是编译器所需要的参数,filenames给出相关的文件名称
1/8/2019 9/34
Make简介
• 在开发大系统时,经常要将程序划分为许多模块。各个模 块之间存在着各种各样的依赖关系,在Linux中通常使用 Makefile来管理。 – 由于各个模块间不可避免存在关联,所以当一个模块 改动后,其他模块也许会有所更新,当然对小系统来 说,手工编译连接是没问题,但是如果是一个大系统, 存在很多个模块,那么手工编译的方法就不适用了。 – 为此,在Linux系统中,专门提供了一个make命令来自 动维护目标文件。 – 与手工编译和连接相比,make命令的优点在于他只更 新修改过的文件,而对没修改的文件则置之不理,并 且make命令不会漏掉一个需要更新的文件。
1/8/2019 7/34
GCC常用编译参数
• -Ldirname:将dirname所指出的目录加入到程序函数档案 库文件的目录列表中,是在连接过程中使用的参数。在预 设状态下,连接程序ld在系统的预设路径中(如/usr/lib)寻找 所需要的档案库文件,这个选项告诉连接程序,首先到-L 指定的目录中去寻找,然后到系统预设路径中寻找,如果 函数库存放在多个目录下,就需要依次使用这个选项,给 出相应的存放目录。 • -lname:在连接时,装载名字为“libname.a”的函数库,该 函数库位于系统预设的目录或者由-L选项确定的目录下。 例如,-lm表示连接名为“libm.a”的数学函数库。
上面我们简要介绍了gcc编译器最常用的功能和主要参数选 项,更为详尽的资料可以参看Linux系统的联机帮助。
1/8/2019 8/34
GCC应用举例
1. gcc hello.c 生成a.out 2. gcc –o hello helo.c 生成hello 3. gcc –O –o hello hello.c 生成hello 4. gcc –O2 –o hello hello.c 生成hello 5. gcc –c hello.c 生成hello.o gcc –o hello hello.o 生成hello 6. gcc –c hello1.c 生成hello1.o gcc –c hello2.c 生成hello2.o gcc –o hello hello1.o hello2.o 生成hello 7. gcc –o test test1.o –lm –I/home/czn/include
相关文档
最新文档