1. linux 中的"當前目錄"和「環境變數"各表示什麼意思
相當於 局部變數和全局變數。
2. Linux設置環境變數
linux設置環境變數一、環境變數環境變數是包含關於系統及當前登錄用戶的環境信息的字元串,一些軟體程序使用此信息確定在何處放置文件(如臨時文件)。設置環境變數說白了就是指定一個軟體的路徑。環境變數是包含諸如驅動器、路徑或文件名之類的字元串。環境變數控制著多種程序的行為。例如,TEMP
環境變數指定程序放置臨時文件的位置。
path,
是告訴系統,
當要求系統運行一個程序而沒有告訴它程序所在的完整路徑時,
系統除了在當前目錄下面尋找此程序外,
還應到那些目錄下去找
www.dnjsb.com
【許可權問題】任何用戶都可以添加、修改或刪除用戶的環境變數。但是,只有管理員才能添加、修改或刪除系統環境變數。linux是一個多用戶的操作系統。每個用戶登錄系統後,都會有一個專用的運行環境。為了使每個用戶默認的環境相同,需要設置一組環境變數。通過修改相應的系統環境變數,對自己的運行環境進行定製。註:linux的環境變數名稱一般使用大寫字母。二、環境變數的設置1.顯示環境變數本例使用echo顯示常見的變數HOME$
echo
$HOME/home/kevin2.設置新的環境變數$
export
MYNAME=my
name
is
kevin
www.dnjsb.com
$
echo
$
MYNAMEmy
name
is
Kevin3.修改已存在的環境變數接上個示例$
MYNAME=change
name
to
jack$
echo
$MYNAMEchange
name
to
jack4.顯示所有的環境變數$
env
www.dnjsb.com
HOSTNAME=localhost.localdomainSHELL=/bin/bashTERM=xtermHISTSIZE=1000SSH_CLIENT=192.168.136.151
1740
22QTDIR=/usr/lib/qt-3.1SSH_TTY=/dev/pts/05.顯示所有本地定義的Shell變數$
setBASH=/bin/bashBASH_ENV=/root/.bashrc
www.dnjsb.com
6.使用unset命令來清除環境變數$
export
TEMP_KEVIN=kevin
#增加一個環境變數TEMP_KEVIN$
env
|
grep
TEMP_KEVIN
#查看環境變數TEMP_KEVIN是否生效(存在即生效)TEMP_KEVIN=kevin
#證明環境變數TEMP_KEVIN已經存在$
unset
TEMP_KEVIN
#刪除環境變數TEMP_KEVIN$
env
|
grep
TEMP_KEVIN
#查看環境變數TEMP_KEVIN是否被刪除,沒有輸出顯示,證明TEMP_KEVIN被清除了。7.使用readonly命令設置只讀變數註:如果使用了readonly命令的話,變數就不可以被修改或清除了。$
export
TEMP_KEVIN
=kevin
#增加一個環境變數TEMP_KEVIN$
readonly
TEMP_KEVIN
#將環境變數TEMP_KEVIN設為只讀$
env
|
grep
TEMP_KEVIN
#查看環境變數TEMP_KEVIN是否生效TEMP_KEVIN=kevin
#證明環境變數TEMP_KEVIN已經存在
www.dnjsb.com
$
unset
TEMP_KEVIN
#會提示此變數只讀不能被刪除-bash:
unset:
TEMP_KEVIN:
cannot
unset:
readonly
variable$
TEMP_KEVIN
=tom
#修改變數值為tom會提示此變數只讀不能被修改-bash:
TEMP_KEVIN:
readonly
variable8.通過修改環境變數定義文件來修改環境變數。需要注意的是,一般情況下,僅修改普通用戶環境變數配置文件,避免修改根用戶的環境定義文件,因為那樣可能會造成潛在的危險。$
cd
~
#到用戶根目錄下$
ls
-a
#查看所有文件,包含隱藏的文件$
vi
.bash_profile
#修改用戶環境變數文件例如:編輯你的PATH聲明,其格式為:
www.dnjsb.com
PATH=$PATH:<PATH
1>:<PATH
2>:<PATH
3>:------:<PATH
N>你可以自己加上指定的路徑,中間用冒號隔開。環境變數更改後,在用戶下次登陸時生效。如果想立刻生效,則可執行下面的語句:$source
.bash_profile需要注意的是,最好不要把當前路徑./放到PATH里,這樣可能會受到意想不到的攻擊。完成後,可以通過$
echo
$PATH查看當前的搜索路徑。這樣定製後,就可以避免頻繁的啟動位於shell搜索的路徑之外的程序了。三、總結常用的:env
顯示所有環境變數
3. 環境變數是什麼意思
問題一:環境變數 .;什麼意思? .是當前路徑的意思,;是分隔符,也就是可以配置多個路徑
問題二:系統屬性中的 環境變數 是什麼意思?有什麼用? 用Windows自帶的幫助和支持搜索「環境變數」,幫助上就有
環境變數是包含諸如驅動器、路徑或文件名等信息的字元串。它們控制著各種程序的行為。例如,TEMP 環境變數指定了程序放置臨時文件的位置。
任何用戶都可以添加、修改或刪除用戶環境變數。但是,只有管理員才能添加、修改或刪除系統環境變數。
使用「控制面板」中的「系統」可以自定義下列變數:
用戶環境變數
對於特定計算機的每個用戶來說,用戶環境變數是不同的。該變數包括由用戶設置的所有內容,以及由程序定義的所有變數(如指向程序文件位置的路徑)。
系統環境變數
管理員可以更改或添加應用到系統(從而應用到系統中的所有用戶)的環境變數。在安裝過程中,Windows 安裝程序會配置默認的系統變數,例如處理器數目和臨時目錄的位置。
問題三:什麼是系統的環境變數 系統的環境變數就是參數及其對應的地址,打開我的電腦,系統屬性,高級系統設置,然後就可以看到環境變數這個選項了,裡面有很多已經設置好的環境變數,比如path,這個變數的路徑就是指,當要求系統運行一個程序而沒有告訴它程序所在的完整路徑時,系統除了在當前目錄下面尋找此程序外,還應到path中指定的路徑去找。還有其他的一些環境變數,也都是有特殊含義的,一般都是會被系統文件調用的參數,比如temp變數,系統的臨時文件就存放在temp對應得路徑里。一般環境變數有多個路徑時,用「;」分開。
問題四:java配置環境變數%是什麼意思 引用的意思 %被引用的名字(環境變數名)%
問題五:環境變數有什麼用? DLL劫持技術當一個可執行文件運行時,Windows載入器將可執行模塊映射到進程的地址空間中,載入器分析可執行模塊的輸入表,並設法找出任何需要的DLL,並將它們映射到進程的地址空間中。
由於輸入表中只包含DLL名而沒有它的路徑名,因此載入程序必須在磁碟上搜索DLL文件。首先會嘗試從當前程序所在的目錄載入DLL,如果沒找到,則在Windows系統目錄中查找,最後是在環境變數中列出的各個目褲答塌錄下查找。利用這個特點,先偽造一個訂統同名的DLL,提供同樣的輸出表,每個輸出函數轉向真正的系統DLL。程序調用系統DLL時會先調用當前目錄下偽造的DLL,完成相關功能後,再跳到系統DLL同名函數里執行。這個過程用個形象的詞來描述就是系統DLL被劫持(hijack)了。
利用這種方法取得控制權後,可以對主程序進行補丁。此種方法只對除kernel32.dll、ntdll.dll等核心系統庫以外的DLL有效,如網路應用程序的ws2_32.dll、游戲程序中的d3d8.dll,還有大部分應用程序都調用的lpk.dll、sxs.dll,這些DLL都可被劫持。
偽造的dll製作好後,放到程序當前目錄下,這樣當原程序調用原函數時就調用了偽造的dll的同名函數,進入劫持DLL的代碼,處理完畢後,再調用原DLL此函數。
這種補丁技術,對加殼保護的軟體很有效,選擇掛接的函數最好是在殼中沒有被調用的,當掛接函數被執行時,相關的代碼已被解壓,可以直接補丁了。在有些情況下,必須用計數器統計掛接的函數的調用次數來接近OEP。此方法巧妙地繞過了殼的復雜檢測,很適合加殼程序的補丁製作。
一些木馬或病毒也會利用DLL劫持技術搞破壞,因此當在應用程序目錄下發現系統一些DLL文件存在時,如lpk.dll,應引起注意。
問題六:環境變數和系統變數有什麼區別?都是怎麼設置的? 系統變數是環境變數的一種,環境變數一種僅本用戶適用,另一種即系統變數整個系統的用戶都適用,兩者都可以在使用應用程序時提供快捷.一般在編輯java文件胡圓或者C#文件時需要修改,設計到多個文件夾之間的切換時也可以根據自己的需要設置.
簡單的說就是,如果設置系統變數和用戶變數,都叫做設置環境變數,設置系統變數時,該系統的所有帳號的用戶都可以使用,但是設置用戶變數時,其他的帳號登陸時就不一定可以使用。
下面以java環境變數為例設置方法舉液:
1、如果是Win95/98,在\autoexec.bat的最後面添加如下3行語句:
JAVA_HOME=c:\j2sdk1.4.1
PATH=%JAVA_HOME%\bin;%PATH%
CLASSPATH=.;%JAVA_HOME%\lib
看好了CLASSPATH中第一個.,這個代表當前目錄,很多人HelloWorld沒有運行起來大多是這個原因。
2、如果是Win2000或者XP,使用滑鼠右擊我的電腦->屬性->高級->環境變數
系統變數->新建->變數名:JAVA_HOME 變數值:c:\j2sdk1.4.1
系統變數->新建->變數名:CLASSPATH 變數值:.;%JAVA_HOME%\lib
系統變數->編輯->變數名:Path 在變數值的最前面加上:%JAVA_HOME%\bin;
CLASSPATH前面的那個.和上面的意義是一樣的。
3、如果是Linux用戶
在你的環境中,通常我加在.bashrc文件中,你可以加在你的Profile文件中。
/usr/local/jdk 為你安裝jdk的目錄。
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
問題七:資料庫中的環境變數是什麼意思 您好:
通常來說環境變數是指安裝目錄。
數據存儲目錄。
這些和系統相關的參數。
印象里java安裝的時候是需要配置環境變數的,一個意思。。。
問題八:電腦中的環境變數是什麼意思?有什麼作用! 比如你打開DOS窗口輸入命令:javac
此時windows幹了什麼事呢?
它首先去當前目錄下找javac.exe
如果發現沒有就去system32下找
如果還沒有就去你電腦中配置的環境變數中找了,如果這里也沒有,那麼就告訴你沒有這個命令
如果你裝了JDK:c:\java 琺;jdk1.6,你就可以把c:\java\jdk1.6\bin配置到環境變數中,此時重啟DOS窗口,輸入javac,就會成功執行該命令
總之,環境變數就是告訴電腦去哪裡找命令
問題九:java環境變數中%%的作用和path的作用是什麼? 應該是%JAVA_HOME%吧,里包括百分號是變數匹配的意思,加入JAVA_HOME=C:\kk那麼%JAVA_HOME%就是C:\,來你哥哥百分號是標識符
問題十:為什麼要設置環境變數,環境變數有什麼用 你好! 1、計算機在執行命令的時候是在環境變數找對應的命令的位置的。如果不正確設置環境變數就不能正確使用相應的命令
2、比如說你要執行 java 命令,你不設置環境變數path包括你的jdk安裝路徑,那系統去哪找你的java.exe文件。
如果執行某個命令,系統無法在當前文件夾里找到對應的.exe,那麼系統就會去path包含的路徑找挨個找看是否能知道對應的.exe,一旦找到第一個對應的.exe就運行命令,其他的路徑下就不找了。如果找不到你就會看到「系統找不到某某命令」的提示。
其他的環境變數也一樣的用途,只不過是用來存儲一些信息用的,這些信息可以被系統使用,也可以被你的應用程序使用 謝謝!