你在开玩笑吧 居然还有人不知道为什么开发Java、Python、PHP程序要配置环境变量 你看完之后不秒懂都不行

✍️作者:极客小俊
😈公众号同名: 一个把逻辑思维转变为代码的技术博主

环境变量 设计2.png

你在开玩笑吧! 居然还有人不知道为什么要配置环境变量?😅

前言概述

你在开始学习编程的时候,首先就会接触到环境变量

例如java、python、php等开发语言的时候,需要去配置一个环境变量 但又不知道为什么要去配置它!

并且这个环境变量在配置的时候你也不能照本宣科的去配置,稍有不慎就会出现各种各样的问题!

今天我们就来讨论讨论这个环境变量的话题,并且搞清楚它的原理,这样以后再次遇到类似问题就会迎刃而解!

什么是环境变量🧐

环境变量 英文名为: Environment variables

是在操作系统中一个具有特定名字的对象,它包含了一个多个应用程序所将使用到的信息, 例如: 如系统临时文件夹位置、系统文件夹位置、某些应用软件文件的路径等等..

举个梨子🍐

当要求系统运行一个程序但是又没有告诉它这个程序所在的完整路径时,系统默认会在当前目录下面寻找这个程序,如果找不到就会到环境变量中的path中指定的路径去找, 所以我们用户可以通过设置环境变量,来更好的运行程序!

这里我以windows系统的环境变量来举个梨子

为了让大家更好的去理解这句话,我们这里来实际操作一下, 你可以打开你的cmd命令行终端来尝试运行一下你的QQ程序, 输入一个QQ程序,你看看会发生什么事情!

如图

这里他提示了一个'qq' 不是内部或外部命令,也不是可运行的程序或批处理文件

结果很明显,不能通过这种方式去打开QQ程序,对吧 也就是说你要先告诉系统这个程序在哪,才能进行打开

也相信大多数人都是通过桌面的QQ图标或者菜单等方式去点击打开这些应用程序 对吧😅

那么如果说我硬要通过这种cmd的方式去打开一个应用程序该怎么办呢?首先你要进入并且找到这个程序的准确路径位置!

例如上面我们要打开QQ 我就要先通过cmd命令直接进入到QQ安装的所在目录下的bin目录下的QQ.exe这个执行程序, 当然这里需要通过一些简单的DOS命令 才可以进去, 不明白没关系,后面会说到!

这里我这里的路径为D:\腾讯软件\QQ\Bin

那么我先切换到D盘,然后再使用cd命令切换到D:\腾讯软件\QQ\Bin这个目录下,最后执行一下QQ.exe

如图

嘿嘿 你惊奇的发现居然打开了QQ程序, 是不是感觉很zb! 这个效果跟你在点击图标去打开是一个效果, 没有任何区别!

那如果本次都叫你用这种去慢慢输入路径的方式打开 万一路径很长很复杂那岂不是你要疯掉!🙄, 当然这里只是举个梨子,让你更好的理解为什么要配置环境变量 你完全可以使用桌面图标来打开这些应用程序!😮💨

而且你如果关掉cmd后重新打开,再次输入QQ 其实又是同样的问题,这就意味着你要从cmd打开QQ必须每次按照刚才的步骤进行打开,并且你还必须要切换到这个QQbin目录下才行,这样就很麻烦了, 也不利于你zb!🤔

那么有没有办法让我们在随便哪个目录中都可以直接使用cmd输入一个QQ就可以打开的办法呢?

现在就是使用环境变量的时候了!

其实很简单你只要把刚刚那个bin目录的路径添加到环境变量系统变量下的path中就可以了

这里的path也就是环境变量中用来指定可执行文件绝对路径,这里配置了很多很多路径,彼此之间用分号隔开!

具体操作这里以win10为例,步骤如下:

点击此电脑---->右键(选择属性)----->点击高级系统设置------>点击(环境变量)

如图

然后找到系统变量下的path点击编辑

如图

然后点击新建

然后复制你的QQ安装目录下的bin路径, 我的路径如下图

也就是复制D:\腾讯软件\QQ\Bin到新建的对话框中

最后全部点击确定即可!

然后你就可以在cmd中的任意目录 任意盘符下进行打开这个应用程序了!

通过这个小案例 你应该对环境变量有一点点初步的认识了吧!

小结

环境变量的主要作用就是规定了某些系统文件所在的位置!

用户变量和系统变量的区别👩👦👦

概述

在上面的环境变量介绍中,我们看到可以通过配置一些路径从而达到在cmd命令行中快速启动应用程序!

但是眼尖的朋友可能已经发现,环境变量的配置中被分为了 用户变量系统变量 他们分别又是什么意思呢?

用户变量 👦

环境变量中的用户变量配置只会当前所登录的系统用户生效, 也就是说登录的系统用户可以对他自己所配置的环境变量参数进行增删改 , 不同用户的用户变量之间是独立存在的,并且互不干扰的

系统变量👩

环境变量系统变量的配置会对所有用户都会有效, 也就是说如果系统变量被修改了,那么任何一个用户都将受到影响!

但是只有管理员账户才有权限进行系统变量的设置, 普通系统用户是不能够去修改系统变量的, 当然一般情况下你通常都是使用的系统管理员账户进行windows系统的登录的

所以平常我们在自己的电脑系统中去配置环境变量的时候,不管你是配置在用户变量还是系统变量基本上还是没有什么区别!

用户变量和系统变量之间的关系👣

用户变量系统变量 我们可以用一张图来进行表示!

如图

看到了吧,不同用户的用户变量之间是并列独立的, 但是如果说系统变量被修改了,那么任何系统用户级别都会用系统变量,因此每个用户都将受到影响

所以说系统变量就是系统级别的变量,影响范围最大, 而用户变量是建立在系统变量之前的独立存在, 它需要使用系统变量, 而我们所指的环境变量则是是一个整体,它里面就代表了系统变量用户变量

所以用户变量系统变量的区别就是他们的级别不一样!

如何自定义环境变量命令🧶

当我们想通过cmd来运行一个自己定义的命令时,就会出现不是内部或外部命令,也不是可运行的程序 或批处理文件的提示信息!

但是如果我们在cmd中输入一个shutdown命令则可以完全正常执行!

如图

这个原因也很简单,正因为shutdown在环境变量中定义了它这个命令所在的路径,而test这个命令则没有!

shutdown命令的默认路径是在C:\Windows\System32目录下, 包括一些常见的cmd命令其实都在这个目录下

如图

C:\Windows\System32这个路径也是默认安装系统的时候就被定义在了环境变量当中, 就跟之前定义QQ应用程序也是一个道理!

如图

所以根据这个道理我们也可以自定义一个环境变量来进行调用!

要知道变量、变量 就是一个可变化的量 我们就利用这个特点来自己定义一个系统变量然后调用它来打开某个应用程序!

举个梨子

我这里要打开微信,当然你完全可以依照之前的办法在path中把微信的WeChat.exe路径加入到其中, 但是这样子做不够灵活!

我们可以先在系统变量中定义一个weixin 然后设置为微信目录地址!

我的地址为:D:\腾讯软件\WeChat

选择系统变量 点击新建 输入变量名

变量名 英文即可!

就是微信的路径

如图

设置好了之后,我们现在就可以对它进行调用!

然后再path中把刚刚自定义好的weixin这个变量加入到其中,格式为%变量名%

如图

这样一来以后你只需要去修改变量的值 path中就会自动获取到了!

接下来就可以去cmd中尝试一下打开这个应用程序吧!

所以通过以上的操作,只要是在cmd中去执行的应用,其位置均储存在环境变量目录值中,我们在执行cmd中的应用时,其实就是在遍历环境变量所有应用程序的位置, 并且查看其中有没有该程序!

如果没有就会提示未找到这种信息,如果在环境变量中找到了你在cmd中输入的命令,那么通过环境变量就可以直接去找到该程序并且执行!

为什么编程开发要配置环境变量🎓

知道什么是环境变量以后,现在应该明白我们在开发java、python、php之前需要配置的环境变量的原因了吧

举个梨子

比如Java我们就需要把JDKbin目录添加到环境变量path中,这样我们就可以在任意目录下使用bin下面的.exe可执行程序,javac.exe、java.exe

javac.exe用来处理.java源代码文件,是把源代码文件编译字节码文件的一个工具,经过javac.exe这个工具编译java源代码文件后形成的.class就是字节码文件

java.exe用来处理.class字节码文件进行执行的,也就是JVM解释执行java程序, 从而实现java程序的运行

而他们都在bin目录下, 这都是为了能够方便的使用这些开发语言所带有的编译解释工具和命令, 所以我们才要配置环境变量

如图

要知道这也正是很多新手朋友刚刚入门java的一个难题, 如果环境变量配置不成功,在cmd中去输入java就会提示找不到某某的关键词 对吧!

然而java的应用程序开发包就在安装JDK目录下面的bin目录中, 并且所有跟Java相关的工具都在bin目录中!

所以在开始学习java或者其他一些开发语言的时候,为了操作方便必须要配置一下环境变量 从而达到能够正常运行java的环境, 其他一些语言也是以此类推!

环境变量的一些小玩法😅

既然我们知道了环境变量中的path可以被系统自动检索,那么我们就也利用这个特点来做一些配置!

举个梨子

我们可以指定某个文件夹下的所有.exe执行程序都可以直接在命令行终端里输入其名称,并且直接打开!

你可以提前准备好一些.exe程序,并放入到一个tools的目录中,比如你把这个目录建立在D:盘

如图

然后你只需要把这个D:\tools路径配置到环境变量path当中

如图

现在就可以通过命令行终端直接输入其执行程序的名称来直接打开了!

如图

但是这种办法 可能会有一些弊端, 因为有些.exe执行程序你拷贝到另外的文件夹是无法被正常打开的!

既然是环境变量我们就要用变量的特性来解决这个问题, 也就是用变量访问指定文件夹列表的方式!

我们可以在系统变量当中自定义一个变量名TOOLS

那么它的值为如下

D:\Microsoft VS Code;D:\PotPlayer64;D:\Typora;D:\ReNamer;D:\Bandizip

也就是我们把vscode、PotPlayer、typora、renamer、bandizip这几种应用的路径都赋值到一个变量当中

如图

注意: 第一次输出的时候,需要这样进行输入,以后再添加直接点击编辑就可以了

也就是以下这个样子

也就是把多个路径映射到一个变量

然后再把这个TOOLS变量添加到系统变量中的Path下, 加入的格式就为%自定义的变量名%

如图

这样子我们就可以通过终端命令行来快速启动这些应用了, 当然前提你要知道这些应用执行程序的名称!

如图

最后🤗

看到这里了想必你已经对环境变量也应该有一个基本的认识了吧,也不会对环境变量的配置感到复杂了!

环境变量还有更多的玩法,也期待小伙伴勇于去发现其中的奥秘!🤗

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “👍点赞” “✍️评论” “💙收藏” 一键三连哦!


如果以上内容有任何错误或者不准确的地方,🤝🤝欢迎在下面 👇 留个言指出、或者你有更好的想法,欢迎一起交流学习❤️❤️❤️❤️❤️

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,012评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,628评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,653评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,485评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,574评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,590评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,596评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,340评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,794评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,102评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,276评论 1 344
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,940评论 5 339
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,583评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,201评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,441评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,173评论 2 366
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,136评论 2 352

推荐阅读更多精彩内容