什麼是環境變量、系統變量、用戶變量

目錄

 

說明:

一、環境變量關係

二、爲什麼輸入幾個符號就能顯示相應的提示?

三、命令行中的程序來自哪裏?

我第一次接觸命令行

程序來自於哪裏?

執行程序跟環境變量有什麼關係?

四、爲什麼需要環境變量?

如果有存在不正確或有什麼不懂的地方,請不要害羞,也不要吝嗇你的問題,踊躍提出來吧


說明:

  • 本博客在當初理解到了環境變量的作用之後,腦子一熱就寫了一片博客,所以有的地方仍然不夠詳細。所以我在2019.12.10更新了本博客的內容

IT人常常會使用dos、終端、控制檯等等,多多少少會遇到命令行界面。也就是這樣的:

Windows dos
Windows dos
Ubuntu18終端界面
Ubuntu18終端界面
Linux命令行
Linux命令行
遠程終端
遠程終端

 

一、環境變量關係

首先,我來說一下他們之間的關係:環境變量只是一個總稱,代表了系統變量和用戶變量,因此我們說環境變量都是指的系統變量和用戶變量。系統變量就是系統級別的變量,用戶需要使用系統變量。如果系統變量被修改了,而任何系統用戶都在用系統變量,因此每個系統用戶都將受到影響。用戶變量運行在系統變量之上的,每個用戶擁有不同的用戶變量,不同用戶的用戶變量之間是並列的,也是互不干擾的。他們之間的關係圖如下如所示

變量關係
變量關係

二、爲什麼輸入幾個符號就能顯示相應的提示?

不知道有沒有人有疑問,爲什麼我在命令行裏面輸入幾個字符,按下回車,屏幕就會顯示相應的提示。

你在命令行裏輸入的那幾個符號,其實就是一些可執行程序的名字(標籤、別名),是可以直接被當前系統直接執行的程序。如果是在Windows系統中,則這些被輸入的符號就是可以直接被windows系統執行、後綴爲'.exe'的程序(文件)。

再比如如在Linux中,輸入的字符則是被叫做可執行的文件,這裏可執行文件意義等同於Windows中的後綴爲'.exe'的文件(程序),這裏值得說明的是:Linux中是不存在通過後綴名來識別文件類型的,即使存在也僅僅只是爲了幫助記憶,或者便於人們識別而已。

衆所周知,程序是給機器閱讀的,所以,這些可執行的程序或文件大多是機器碼,不是人類可識別的字符。Linux中的可執行文件(程序)不可以在Windows中去運行,因爲Linux系統不是Windows系統(每個系統執行程序或運行代碼的方式是不同的)。

三、命令行中的程序來自哪裏?

我第一次接觸命令行

本文作者最開始遇到這個問題的時候在初學Java程序的時候。學習Java程序需要配置環境變量,如果環境變量配置不成功,在命令行中去輸入'java'就會提示'找不到xxxx'的一類的關鍵詞。通過第二節大概知道爲什麼了,你輸入的這個java字符就是代表可執行程序

程序來自於哪裏?

其實這個叫'java'的應用程序就在你的安裝目錄下面的bin目錄中。所有軟件(包括Java在內的所有軟件)安裝目錄下bin目錄中,均代表裏面放的是可執行的機器碼(程序文件),也就是給機器閱讀(執行)的文件(程序)。

執行程序跟環境變量有什麼關係?

咋們來看看windows中的環境變量截圖

變量關係截圖
變量關係截圖

命令行之所以能執行這個程序,是因爲環境變量。

在上面的截圖中可以看得出,變量都只是一個名字,真正起到作用的是變量的值,可以看到變量值中大部分都是目錄路徑,少部分可以看到'.exe'結尾的程序,目錄是用來幹嘛的?就是用來給命令行搜索程序文件的,你在環境變量值中填寫的目錄路徑,會被命令行遍歷目錄中的內容,而你知道的目錄下都是些可執行程序。那麼這個時候命令行輸入的命令都會在這些變量值中的目錄去找程序,如果找到了跟在命令行中輸入的名字(字符)一模一樣的程序名,那麼命令行就會執行這個程序,以達到執行命令行程序的功能

因此,所有在命令行中去執行的程序,其位置位置均儲存在環境變量目錄值中,我們在執行命令行中程序的時候,其實就是在查找環境變量所有程序位置中有沒有(是否找得到)這個程序,如果沒有就會提示'未找到'等關鍵詞,如果在環境變量中找到了你在命令行中輸入的程序名字,那麼通過環境變量就可以直接去執行程序。

四、爲什麼需要環境變量?

在電子計算機出現之初,命令行就出現了。最開始的時候,人們(少數)都是使用的命令行,後來圖形化的電子計算機的出現,命令行的計算機才從普通消費者印象中漸漸消失殆盡,所以命令行是計算機最開始的就有的了。那爲什麼現在命令行還沒有消失?因爲它有不可替代的優勢:高效、快捷。

圖形界面只是方便非IT專業的人們準備的,圖形界面看起來友好,不需要太好的邏輯就能操作系統,這也就是爲什麼後來Windows快速佔領市場,而同樣非常優秀的Linux卻只能聽起來像神話一樣的存在。

 

如果有存在不正確或有什麼不懂的地方,請不要害羞,也不要吝嗇你的問題,踊躍提出來吧

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章