linux系统默认的环境变量path,Linux编程 12 (默认shell环境变量, PATH变量重要讲解)...
一 .概述
默認(rèn)情況下, bash shell會用一些特定的環(huán)境變量來定義系統(tǒng)的環(huán)境。這些默認(rèn)環(huán)境變量可以理解是上篇所講的系統(tǒng)全局環(huán)境變量。
1.1?bash? shell支持的Bourne變量
Bourne shell 是 UNIX 最初使用的 shell。下面例舉幾個常用的變量名。
變量名
描述
HOME
當(dāng)前用戶的主目錄
PATH
Shell查找命令的目錄列表,由冒號分隔
PS1
Shell命令行界面的主提示符
PS2
Shell命令行界面的次提示符
如下圖所示:使用echo 輸出該變量名$PATH的值。值給出了shell查找命令會去的6個目錄。優(yōu)先最高的是/usr/local/bin 目錄下。
下面是主提示符與次提示符:
1.2 bash shell 環(huán)境變量
下面只是隨意列出了幾個變量名。像BASH_SUBSHELL在介紹子shell中有講過。
變量名
描述
BASH_SUBSHELL
當(dāng)前子shell環(huán)境的嵌套級別。
BASH_VERSION
當(dāng)前運行的bash shell 版本號。
HOSTNAME
當(dāng)前主機名稱
PWD
當(dāng)前工作目錄,對應(yīng)內(nèi)部命令小寫pwd
下面隨變演示一個,查看bash shell版本號:
1.3?? PATH環(huán)境變量
上面講到了PATH變量,它的作用是:當(dāng)你在shell命令行中輸入一個外部命令時。Shell必須搜索系統(tǒng)來找到對應(yīng)的程序。 PATH環(huán)境變量定義了用于進(jìn)行命令和程序查找的目錄。上面列出了要查找的6個目錄。如果命令或者程序的位置沒有包括在PATH變量中,那就必須使用絕對路徑來查找,否則shell是無法找到的。找不到,它會產(chǎn)生一個錯誤信息。
如下圖所示:mysqld服務(wù)之所以能找到,是因為它存在于/usr/sbin目錄下。Mysql的mssqldump工具包之所以能找到,是因為它存在于/usr/bin目錄下。這二個目錄都是存在于PATH全局變量中。而nginx服務(wù)命令卻未找到。
在重新加載nginx配置文件時,會提示未找到命令
下圖來查找下nginx 服務(wù)是存放于哪個目錄下。通過下圖知道,nginx服務(wù)存在于/usr/local/nginx/sbin 目錄下。而PATH環(huán)境變量中沒有該路徑。所示“提示未找到命令…“。
如果想在虛擬目錄任意位置操作nginx服務(wù),又不想每次都用cd絕對路徑定位。有二種方法:1是前面章節(jié)所學(xué)的軟鏈接,把nginx的絕對路徑能過軟鏈接指定到PATH環(huán)境下的一個目錄下。2是將nginx絕對路徑添加到PATH目錄中。
1.4??添加PATH環(huán)境變量
上面講到了nginx服務(wù), 下面演示將nginx服務(wù)的絕對路徑,添加到PATH環(huán)境變量中。如下圖所示:已將nginxx服務(wù)路徑添加到了PATH環(huán)境變量中。
下面來試試,在任意的虛擬目錄下,執(zhí)行nginx服務(wù)。下面是隨意在虛擬目錄的根目錄下查看nginx服務(wù), 重新加載nginx服務(wù),該命令也找到了,下圖的錯誤是nginx進(jìn)程沒有啟動,與要介紹的PATH沒有關(guān)系。
總結(jié): 當(dāng)初學(xué)linux的時候,每當(dāng)安裝了一個服務(wù)時,在終端敲 bash執(zhí)行該命令,經(jīng)常提示未找到該命令。但有些服務(wù)又可以直接找到。現(xiàn)在明白了, shell查找命令會去指定的PATH環(huán)境目錄下查找。當(dāng)有些服務(wù)安裝后,該服務(wù)的bin目錄并沒有在PATH環(huán)境目錄中。
注意:對于PATH變量的修改,當(dāng)退出終端(exit)或重啟系統(tǒng)時會失效。后面介紹如何永久保持環(huán)境變量的修改效果。
【目錄】linux 編程
隨筆分類 - linux 編程 Linux編程 24 shell編程(結(jié)構(gòu)化 if [ condition ] 數(shù)值比較,字符串比較) 摘要: 一.概述 接著上篇講的結(jié)構(gòu)化命令,最后講到了test命令 ...
Linux編程之變量
Bash變量與變量分類 變量命名規(guī)則 變量名必須以字母或下劃線打頭,名字中間只能由字母.數(shù)字和下劃線組成 變量名的長度不得超過255個字符 變量名在有效的范圍內(nèi)必須是唯一的 在Bash中,變量的默認(rèn)類 ...
shell編程之BASH變量(2)
變量命名規(guī)范 在bash中,變量的默認(rèn)類型都是字符串型,定義 name = 'kk' 變量分類 用戶自定義變量.變量自定義的 環(huán)境變量:這種變量中主要保存的是和系統(tǒng)操作環(huán)境相關(guān)的數(shù)據(jù).變量可以自定義, ...
LINUX中查看、添加、刪除PATH以及永久添加PATH
1.查看PATH變量 echo $PATH 會出現(xiàn): 路徑1:路徑2:路徑3 2.添加PATH變量 export PATH=$PATH:新添加的路徑 用此方法添加的PATH,在關(guān)閉或者重啟LINUX后 ...
Linux編程簡介
Linux編程可以分為Shell(如BASH.TCSH.GAWK.Perl.Tcl和Tk等)編程和高級語言(C語言,C++語言,java語言等)編程,Linux程序需要首先轉(zhuǎn)化為低級機器語言即所謂的二 ...
《Linux命令行與shell腳本編程大全》 第六章環(huán)境變量
很多程序和腳本都通過環(huán)境變量來獲取系統(tǒng)信息.存儲臨時數(shù)據(jù)和配置信息. 6.1 什么是環(huán)境變量: bash shell用一個叫環(huán)境變量(environment variable)的特性來存儲有關(guān)shel ...
Linux編程 21 shell編程(環(huán)境變量,用戶變量,命令替換)
一.概述 這篇介紹shell的變量使用,跟其實語言一樣,都有聲明變量,使用變量,在shell中變量允許你臨時地將信息存儲中shell腳本中,以便和腳本的其他命令一起使用. 1.1 環(huán)境變量 在前面章節(jié) ...
Linux編程 11(shell全局環(huán)境變量與局變環(huán)境變量)
一.概述 在linux中,很多程序和腳本都通過環(huán)境變量來獲取系統(tǒng)信息,存儲臨時數(shù)據(jù),配置信息.環(huán)境變量是指用來存儲有關(guān)shell會話和工作環(huán)境信息,允許你在內(nèi)存中存儲數(shù)據(jù),以便程序或shell中運行的 ...
環(huán)境變量—《linux命令行與shell腳本編程大全》
環(huán)境變量部分: 1.查看全局變量:printenv/env 2.顯示單個環(huán)境變量的值:echo 如echo $HOME 3.顯示為某個特定進(jìn)程設(shè)置的所有環(huán)境變量:set 4.設(shè)置全局變量:創(chuàng)建局部環(huán)境 ...
隨機推薦
【TJOI&;HEOI2016】【Bzoj4551】樹
這道題是可以用樹鏈剖分來做的,但其實有比它更加簡單的做法--并查集. 可以想到,這類題的一種常見做法是離線處理,先全部讀入,再從后往前處理,每次遇到標(biāo)記操作,就把這個點的標(biāo)記次數(shù)減一,到零以后就把這個 ...
winform常用的屬性(listview),常用容器(二者結(jié)合)
ListVies控件主要用于展示數(shù)據(jù)(非常實用和重要的控件) FullRowSelect:設(shè)置是否行選擇模式.(默認(rèn)為false)?(開啟之后一下選中一行數(shù)據(jù)) ___________________ ...
xib的UIScrollView自適應(yīng)高度
1.首先,我們先把這個size classes關(guān)了(需要使用的童鞋無視掉,也無視掉我的工程名,這是我弄高德地圖創(chuàng)建的工程) 2.添加一個scrollview上去,設(shè)置上下左右約束為0 3.然后搞一個v ...
AlwaysOn可用性組測試環(huán)境安裝與配置(一)--SQL群集環(huán)境搭建
一.測試環(huán)境介紹 1. 宿主使用工作站(HYPR-V)基本配置如下: 處理器:Intel(R) Core(TM) i5-4470 CPU @ 3.20GHz 3.20GHz 內(nèi)存(RAM):8.00G ...
POJ C Looooops
Description A Compiler Mystery: We are given a C-language style for loop of type for (variable = A; ...
php分頁類的二種調(diào)用方法(轉(zhuǎn)載)
總結(jié)
以上是生活随笔為你收集整理的linux系统默认的环境变量path,Linux编程 12 (默认shell环境变量, PATH变量重要讲解)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux时间调整为dst,Linux上
- 下一篇: linux远程连接硬件加速,linux