從設定環境變數談起——一些常見卻有意義的問題
**
為什麼要設定環境變數
1.DOS環境下,當輸入一條命令執行時,DOS首先判斷其是否為系統自帶命令(又分為內部命令和外部命令,這裡不做討論),如cd開啟某資料夾,dir開啟當前檔案內所有檔案。
2.如果不是,則在當前所在的目錄下尋找此命令。
3.若仍然沒有,則到系統的PATH路徑下尋找此指令所在的資料夾尋找此指令。
4.若還沒有,則報錯。e.g
經過以上的分析,如果我們想要在DOS環境下直接使用某些命令(不用cd到特定路徑下),則可以將這些指令的路徑新增到path值下。這樣就算當前目錄找不到,也可以通過預設的path路徑找到繼而識別執行。
接下來就是具體的配置步驟:
控制面板——系統與安全——系統——高階系統設定(這是目的,怎麼找到的方式隨意)——環境變數。
其中的系統變數一旦設定,對每個計算機使用者(登陸使用者可能不只一個)都有效;而使用者變數是隻對於特定使用者有效。
將想要直接識別的指令所在目錄直接加分號;後append在Path之後,搞定。
ps:
1.Windows環境變數不區分大小寫,classpath和CLASSPATH是一樣的
2.用“set path=變數值”的語法形式path預設值的只有一個,即新的變數值會覆蓋舊的變數值。為防止這種情況,可以改用“set path=%path%;新的變數值”命令,其中,%path%指的就是原有的變數值,分號“;”用於分隔不同變數值,後加新的變數值。
3.上述在DOS環境下使用set命令只能改變當前path值,一旦
4.在DOS環境下使用“path”命令可以檢視當前path值,或者echo %path%
5.系統變數的Path是DOS的查詢目錄,除此之外,可以將整個環境變數視為一個file,可以使用巨集定義的形式。如先定義CLASSPATH=xxx路徑; 而Path=%CLASSPATH%\bin;的形式。
所以,總結來看,系統變數 System Variables 正如其名,是屬於“系統”的變數,在整個系統執行期間有效,此變數能被系統識別(e.g.Path值中的CLASSPATH值的替換),而PATH的值是系統遇到未能識別的命令時,預設的查詢路徑,e.g.
if(INSTRUCTION是內部或外部命令)
{...}
else
{
執行 Path\INSTRUCTION;
}
宣告:除已註明的引用外,文章系作者原創,引用轉載請註明出處,如有必要請聯絡作者。